IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> ASP.NET MVC 项目修改与删除(完结) -> 正文阅读

[开发测试]ASP.NET MVC 项目修改与删除(完结)

目录

  1. 引用layui插件
  2. 查询数据源信息
  3. 新增数据源信息
  4. 修改数据源信息
  5. 删除数据源信息

修改,就是将在视图层手动修改的数据将修改的数据传到数据库,使数据库内数据发生改变
删除,就是将数据删除,连同数据源内的数据也删除。

  1. 修改视图层代码
function XG(传参){
    //重置模态框表单
    $("#form表单ID").get().reset();
   或$("#form表单ID")[0].reset();
    
    //数据的回填
    $.post("控制器参数",{键值对=>控制器参数:传参},function(自定义参数){
       $("#隐藏域ID").val(自定义参数.隐藏域字段ID);
       $("#需要回填的字段").val(自定义参数.数据库对应的字段名);
       //打开模态框
	   $("#模态框ID").modal("show");
    })
}


//保存新增
	function saveXG(){
        //获取模态框表单上需要的字段
        //模态框字段在用val()的时候,元素必须要有name属性
        var xx = $("#隐藏域字段ID").val();//必须的
        var xxx = $("#需要的字段ID").val();
        ......
            
        //需要对获取的数据进行数据验证
        if(xxx==""||xxx==undefined||xxx==null){
            alert("请输入xxx");
            return;
        }
        //也可把是否为空封装为一个函数来用
        //例如:
        if(isNotOrNull(xxx)){
            alert("请输入xxx");
            return;
        }
        
        //打开layui插件的加载层
        var index = layer.load();
        
        //异步请求
        $.post("控制器路径",{键值对 =》数据库表字段名:视图层获取到数据的变量},function(自定义参数){
            //关闭加载层
            layer.close(index);
            //判断状态
            if(自定义参数.State){
                //输出
                layer.msg(自定义参数.Text);
                //关闭模态框
                $("#模态框ID").modal("hide");
                //刷新表格,查询函数
                searchCondition();
            }else{
                //输出
                layer.alert(自定义参数.Text);
            }
        })
    }

    //封装好的判断是否为空
    function isNotOrNull(自定义参数名){
            if(自定义参数名==null||自定义参数名==""||自定义参数名==undefined) return true; 
        }
  1. 修改控制器代码

    回填数据在视图层模态框中ID:

//根据ID查询需要回填的数据
public Actionresult HT(int 传参){
    try{
        需回填的表 自定义名 = Model对象.需回填的表.Single(lambda表达式: m=>m.需回填的表的主键ID==传参);
        return json(自定义名,JsonRequestBehavior.AllowGet);
    }
    catch(Exception e){
        Console.WriteLine(e);
        return Json(null,JsonRequestBehavior.AllowGet);
    }
}

保存修改

public ActionResult XG(保存的表 自定义变量){
    
    实例状态类 msg = new 实例状态类();
    
    //数据验证
    //如果文本框就判断是否为空,下拉框则是判断ID大于0
    if(!string.IsNullOrEmpty(自定义参数名.字段名)||字段名ID>o){
        //判断是否与原有数据库表重复
        int 自定义变量 = Model对象.修改的表.Count(m>m.修改表主键ID!=传过来的主键ID&&(原有数据内容 == 输入的数据内容));
        
        //判断如果没有相同,则继续执行
        if(自定义变量==0){
            //数据库表添加新增数据
            Model对象.Entry(自定义参数名).State = System.Data.Entity.EntityState.Modified;
            //如果保存对象大于零
            if(Model对象.SaveChanges() > 0){
                //状态
                msg.State = true;
                //输出
                msg.Text = "修改成功"
            }
            else{
                //输出
                msg.Text = "修改失败"
            }
        }
        else{
             msg.Text = "数据异常,请检查!"
        }
    }
    else{
        msg.Text = "信息不完整,请检查!" 
    }
     //输出
    return Json(msg,JsonRequestBehavior.AllowGet);
}
  1. 删除视图层代码
function dele(传参){
    //用layui插件使提示框弹出
    layer.confirm("您确定要删除XXX",{icon:3,title:'提示'},function(rt){
        //打开加载层
        var index = layer.load();
        //异步请求
        $.post("控制器路径",{键值对},function(rt){
            //关闭加载层
            layer.close(index);
             //判断状态
            if(自定义参数.State){
                //输出
                layer.msg(自定义参数.Text);
                //关闭模态框
                $("#模态框ID").modal("hide");
                //刷新表格,查询函数
                searchCondition();
            }else{
                //输出
                layer.alert(自定义参数.Text);
            }
        })
    })
}
  1. 删除控制器代码
public ActionResult 自定义变量(int 传参){
    实例状态类 msg = new 实例状态类();
    
    //判断需要删除数据的表是否在其他表也在用
    int yyy = Model对象.有关联的表.Count(m=>m.关联表主键ID==传参);
    //如果没有则执行
    if(yyy==0){
        //用到Single都要用try-catch判断异常
        try{
        //根据ID查询要删除的数据 
        需删除数据的表 自定义名 = Model对象.需删除数据的表.Single(m=>m.表主键ID==传参);
        Model对象.需删除数据的表.Remove(user);
        //保存
        if(Model对象.SaveChanges()>0){
            	//状态
                msg.State = true;
                //输出
                msg.Text = "删除成功"
            }
            else{
                //输出
                msg.Text = "删除失败"
            }
        }
        catch(Exception){
             Console.WriteLine(e);
            //输出
            msg.Text = "数据异常"
        }
    }
    else{
       //输出
       msg.Text = "该数据正在使用中,无法删除" 
    }
    return Json(msg,JsonRequestBehavior.AllowGet);
}

到此整个项目就步骤就说完了,相比来说,删除是最简单的,想要更详细,稍后我会上传我做的《图书管理系统》,喜欢的,可以下载!

在线求个三连,谢谢!

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-08-12 16:58:56  更:2021-08-12 16:59:51 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年10日历 -2024/10/18 16:28:41-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码