ASP.NET MVC的增加、修改、删除

	ASP.NET MVC的增加、修改、删除
开发工具与关键技术:VS/MVC
作者:何桂朋
撰写时间:2019年4月1日

虽然说 增、删、查、修之中,查找是最为重要,但要实现功能还是离不开增加、修改、删除,
所以我就今天说说ASP.NET MVC的增加、修改、删除的“那些事”;
首先是ASP.NET MVC的增加:
在新增前要两个步,第一判断传入数据是否为空,第二点”查重”,查重是判断输入关键性字段的数据与数据库数据重复,这里说的“关键性字段的数据“是除主键ID以外的特指字段,比如:学号、学院名称等等
这点特别重要。
回到正文继续说新增,你还记得学习SQL的时候,经常看到下面的图片。
在这里插入图片描述
这张表的字段我分它两类:像前面5个字段,我称它为“非定义字段”,后面的一个字段,我称它为“自定义字段”,在新增时候,
第一个“非定义字段”,通常是主键ID,这个不用管,因为新增是会自动生成ID,
而第二、第三、第四、第五个则要通过连表查询相对应的ID,然后进行赋值,
最后是自定义字段,这一类,可以直接赋值,也可以通过传入数据进行赋值。
操作如下:
声明接收器:pwStudent
有人会问为什么要声明接收器,一个一个给数据库赋值不行吗?
其实是可以的,但是效率低,所以用声明接收器数据,最后再将接收器一起性导入数据库。
在这里插入图片描述

最后进行新增,就一句代码数据库的表格进行赋值,
在这里插入图片描述

意思是把pwStudent的数据给到PW_Student.
新增做完了,现在开始写修改,
修改和新增的操作基本一样,修改之前,首先查询相关信息,然后进行数据回填(如下)
在这里插入图片描述

回填是为了方便用户使用。
回填之后就是“查重”,


var oldStudentRow = (from tbStudent in myModels.PW_Student
                                     where tbStudent.studentID != pwStudent.studentID &&
                                     (tbStudent.StudentNumber == pwStudent.StudentNumber ||
                                     tbStudent.StudentIDNum == pwStudent.StudentIDNum)

然后通过主键ID查找出要修改的信息。

  PW_User dbUser = (from tbUser in myModels.PW_User
                                          where tbUser.UserID == pwUser.UserID
                                          select tbUser).Single();

再进行赋值;

dbUser.UserNuber = pwStudent.StudentNumber;
dbUser.Password = common.AESEncryptHelper.Encrypt(pwStudent.StudentNumber);
dbUser.UniformAuthenticationCode = pwUser.UniformAuthenticationCode;

最后执行修改,

  myModels.Entry(dbUser).State = System.Data.Entity.EntityState.Modified;

既然说了新增、修改,不妨再来个删除。
删除可以说是增、删、查、修之中,最简单的一个。
首先是通过主键ID查找出要删除的信息。

PW_Student dbstudent = (from tbStudent in myModels.PW_Student
                                                where tbStudent.studentID == studentID
                                                select tbStudent).Single();

就可以直接执行删除。

myModels.PW_Student.Remove(dbstudent);//移除

如果,你想实现批量删除,就用到foreach in循环语句。
上述,就是我对ASP.NET MVC的增加、修改、删除的理解和写法,希望对你有帮助。

猜你喜欢

转载自blog.csdn.net/weixin_44550157/article/details/89075831