开发工具与关键技术:MVC
撰写时间:2019.05.03
一、 Linq新增
其实linq新增的代码就两句话,在新增里,关键是判断。判断才是核心;数据的控制才是核心;让用户的数据向你想象的方向填才是核心。否则数据就会很乱
二、 Linq修改
在linq修改中,代码也是两句,但是现在修改中,最为重要的是 myModel传进来的对象实体(也就是下图中的sysAcdeme)必需是某一个表的对象的实体。sysAcdeme中包含了ID当sysAcdeme 对象的状态改为修改时它会自动匹配ID数据,当你使用SaveChanges的时候它就会把修改状态的数据给改到数据库中。
三、 Linq删除
Linq删除的逻辑----先查询出删除的代码:把被删除的对象查询出来,然后再移除掉
但在删除里,不能直接删除学院信息,因为他们有很多的表连在一起,为了避免数据库有残留数据,所以删除的必须要进行判断,判断学院信息下面是否还有年级、专业、教师如果有则要先删除年级、专业、教师。
四、单表的查询(初始化表格)
在查询单表信息的时候,可以自定义一个命名,如:var linq =from 自定义表名 in myModels.需要查询的表 orderby 自定义表名.查询表的ID select 自定义表名
然后再查询表的总行数,分页查询表的数据,在分页的时候必须要用orderby进行分页(使用 skip/take 前也必须要使用orderby)最后封装数据,返回json。
注意:单表查询时,必须获取表的ID,进行分页时也是根据表单的ID进行分页
在视图的初始化表格的时候,所需要的url路径必须写对,还有html table 的id 也需要一致,最好就是复制粘贴 避免出错。
记得要用JS插件:
<script src="~/Content/js/customfunction.js"></script>
作用是:jquery 根据json对象填充form表单
五、 单表—新增
新增里主要的是判断,判断是否获取到页面传到控制器的数据,判断的内容记得用try装,
然后在根据需要新增的内容到数据库中查询,看是否有重复
在视图中先要实现打开新增模态框,然后在进行保存,保存时 先获取表单值,再进行判断值,在判断的过程中用到 strValIsNotNull 时,记得先定义一下,否则判断条件不成立或者出错误
最后根据需要新增的内容,进行判断 然后保存,获取表单的值必须要和判断值的内容一致,判断值打完之后记得关闭模态框,刷新表格
六、 单表—修改
修改和新增唯一不一样的是:多了一个条件,表ID,然后检查其他表信息是否有冲突
但在视图代码的弹出修改模态框时多了一个要求,需要回填数据,所以在修改数据时还要在控制器查询一下需要修改的ID的信息,然后继续数据回填,
最后就进行保存修改,其实保存修改也就比保存新增多了一个ID值,别忘了最后要关闭模态框,刷新表格
七、 单表—删除
删除表信息时需要判断 表的下面是否有对应的信息没有删除,如果有那则要删除该信息才能删除表,如果表下面什么信息都没有,则可直接删除,后面再进行判断是否删除成功
在视图中,删除时需要发送删除请求,然后根据ID进行判断是否成功