Linq修改数据的方法

作者:坚定的守猴

撰写日期:2019年4月13日

开发软件和关键技术:VS;Linq修改数据

做项目的过程中,对于数据的修改是很常见的。在这么多的数据修改方法中,我们现在来看一下Linq修改数据的方法。

在修改之前,我们首先要回填一下数据的表单。与前面Linq新增不同的是,修改数据之前肯定表单里面得有修改之前的数据,并不是和新增那样一片空白。下面就举一个修改学院表的例子
在这里插入图片描述

在回填表单数据的过程中,通过数据的ID去获取需要回填的数据。就从图中我们看一下,学院信息通过括号中学院ID(Academe ID)方式进行查询,一般查询数据的情况下都习惯用try catch,这样的目的是为了在查询数据的过程中方便捕获数据的异常。从数据库里面获取的学院ID就等于页面传过来的需要回填数据的学院ID,最后就用Single(单条数据的查询方式)对获取到的数据进行查询。Single查询的方式只适用单条数据,如果出现多条数据的或者数据为空的情况下,就会出现异常。所以刚才说到采用try catch的方式就是为了捕获这些情况的数据异常。

最后获取数据成功的话就直接返回获取数据的那个值,不然数据就直接为空。

获取回填数据之后,就到页面看一下这边的代码
在这里插入图片描述

这个是打开修改模态框的代码,post(数据接口)从控制器那边传过来的数据路径,路径名称正确的话就可以正常的在页面上显示。接下来我们就来回调一下函数,采用if的判断语句,如果回调的数据不为空,那就正常的回填学院的数据,同时打开修改的模态框,不然就出现下面参数异常的情况。

数据回填处理好之后,下面就到修改部分了。虽然从某种程度上说,Linq新增和修改的方法大同小异,但是与新增不同的是,新增的方法不需要新增主键,而修改就需要。所以呢,这是第一个不同点。对于需要修改主键的情况,我们需要在修改的页面上加上一句隐藏主键的代码。

在这里插入图片描述

与新增的第二不同点就是在判断的时候

在这里插入图片描述

这次判断不再是和以前的数据进行判断了,因为避免有时候出现修改出错时不能保存以前的数据,所以就与其它的数据进行判断。在判断学院名称和代号不能为空的过程中,在下面就比新增多了判断一条学院ID不能其它的学院ID数据相同。那整一段的逻辑判断就是在判断学院ID不能和其它数据相同的同时,学院名称和代号也不能和其它的数据相同。最后以总行数(Count)的形式把得到学院信息进行查询出来。
在这里插入图片描述

之后就把查出来的数据进行判断。如果查询的数据没有和其它数据相同的情况下,就把这些数据变成修改的状态,最后就对这些修改的数据保存到数据库里面。这就是和新增的第三个不同之处。就在修改的那一句代码。变成修改的状态,系统在处理数据就会识别输入进来的这条数据是需要修改的,才会执行修改数据的代码。

修改数据这边的数据判断就处理完毕,下面就简单的看一下Js部分的代码

在这里插入图片描述

获取页面的数据,然后就对获取到的数据进行判断处理,如果修改成功之后就刷新一下表格,不然就提示数据要填写完整。判断好之后就测试一下效果。

在这里插入图片描述

选中25那条数据进行修改,看到数据能够正常的回填成功。

现在就对25这条数据进行修改,看能不能修改成功

在这里插入图片描述
在这里插入图片描述

修改之后就点击一下保存,从图中就看出来修改成功了。

实现了效果,Linq修改数据的方法的介绍就到此结束了。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值