增删查改

1.MVC简介:MVC是Model-View-Controller的简称。
Model简单的说就是模型,
View 视图
Controller 控制器
关系图如下
在这里插入图片描述

MVC的增删查改
查:
MVC的数据查询:其实简单来说就是数据库表与数据库表连接查询出数据来。
//linq 单表查询的写法
/*
(from 自定义的表名 in Model对象.查询的表
【where 自定义的表名.字段1 关系运算符 值 【&& 自定义的表名.字段2 关系运算符 值】】
【orderby 自定义的表名.字段】
【select 自定义的表名】
【select new {[属性名1= ]自定义的表名.字段1,
[属性名2= ]自定义的表名.字段2,
[属性名3= ]自定义的表名.字段3,

}】
【select 类名{ 类的属性1=自定义的表名.字段1,
类的属性2=自定义的表名.字段2,

}】
).Single();//查询单条数据,当没有数据或者有多条数据时会触发异常
.SingleOrDefault();//查询单条数据,当没有数据返回默认值(对象的默认值为null);当有多条数据时触发异常
.ToList();//查询多条数据并转为List
.Count();//查询有多少条数据

在这里插入图片描述

  个人解释:表与表连接是通过join来进行连接,

in是把数据库里的表暂时放在自定义命名的表里
on 是表与表连接是通过啥ID进行连接
Equal 是ID与ID 相连

特别注意:想要查询出来的数据如果和自己自定义封装的类的命名一样的,要和自己封装好的实用类命名保持一致,不然会出现报错

多条件查询:说白了就是根据用户的需求来查询相应的数据
一般是按照页面传递过来的数据来和数据库里的数据进行比较
如果页面传递来的数据是个时间段,就不能直接多条件查询
要先把时间段里的”-”替换成”~”; // 替换Replace(“a”,”b”)
再将日期进行分割,//分割Split(“b”)
如果分割的长度等于分割的长度,就将日期字符串转为Date类型
再和数据库里的数据进行条件查询
如下图:

在这里插入图片描述

还有递归查询:简单的说就是根据用户上一级用户ID查询出下级用户组ID,一直这样查询下去,直到没有数据
根据上级用户组ID查询出当前用户在S_UserGroup列表里的一条数据(userGroupID,userGroupNumber,superiorUserGroupID)
根据上面查询出来的数据–userGroupID 查询出和userGroupID相同的数据,从而查询出用户组(下级)
递归思路图如下:
在这里插入图片描述

增:增就是新增,也就是把一条新的数据添加到数据库再返回给视图,从而再显示在页面上
一般的新增数据都是弹出一个模态窗体,让用户根据自己的需求进行新增数据,这样显得页面比较简洁
在页面的效果如下图:
在这里插入图片描述

用户填完后,点击确认按钮,页面数据传递到控制器上,控制器要对他们进行判断/验证,符合条件才能新增到数据库里从而显示到页面上,不符合就弹出错误警示框
新增页面代码图:
在这里插入图片描述

//控制器代码:
在这里插入图片描述

//成功在页面新增一条数据
在这里插入图片描述

改:简单的说就是修改。
根据用户的需求把原来的数据进行修改。修改一般和新增公用一个模态框体,这样可以减少代码量,
修改之前要重置一下表单,在HTML里要有这一句代码才能实现: //重要代码
修改标题和新增标题可以通过jquery方法进行修改: $(“标题ID”).text(“修改航班”);然后就要回填一下数据,当用户修改完数据,点击确定按钮就把修改后的数据传递回控制器,控制器把传递来的数据进行验证/判断;符合条件就进行保存。
修改操作核心: myModel.Entry(dbFlightCabin).State = System.Data.Entity.EntityState.Modified;

删:删除:根据主键ID删除数据,所以要从页面传递主键ID到控制器。
删除的时候还要考虑一下删除的那条数据所关联的表里的数据也要删除一下

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值