EF简单得增删查改
-
新增
//以班级表为例
public ActionResult Add()
{
//单个新增
var classinfo = new ClassInfo()
{
Name = “01”,
Remark = “一班”,
Term = 2,
TeacherID = 1
};
db.ClassInfos.Add(classinfo);
db.SaveChanges();
//批量新增
List classinfos = new List() {
new ClassInfo(){
Name = “01”,
Remark=“一班”,
Term=2,
TeacherID=1
},
new ClassInfo(){
Name = “02”,
Remark=“二班”,
Term=2,
TeacherID=1}
};
//保存方法一
db.ClassInfos.AddRange(classinfos);
//保存方法二
db.Entry(classinfos).State = System.Data.Entity.EntityState.Added;
db.SaveChanges();
return View();
} -
修改
public ActionResult Edit()
{
//方法一
//先查询在修改,修改某个属性,不会影响其他属性的变化
var classinfo = db.ClassInfos.Find(8);
classinfo.Remark = “四班”;
db.SaveChanges();
//方法二
//new对象,将对象的状态,改为修改状态,这样可能将其他属性设置为空
var classinfos = new ClassInfo() {
ID = 7,
Name = “01”,
Remark = “六班”,
Term = 2,
TeacherID = 1
};
db.Entry(classinfos).State = System.Data.Entity.EntityState.Modified;
return View();
} -
删除
public ActionResult delete() {
//方法一
var classinfo = db.ClassInfos.Find(8);
db.ClassInfos.Remove(classinfo);
db.SaveChanges();
//方法二
var classinfos = new ClassInfo()
{
ID = 8
};
db.Entry(classinfos).State = System.Data.Entity.EntityState.Deleted;
//批量删除
List classInfos = db.ClassInfos.Where(p => p.Remark == “二班”).ToList();
db.ClassInfos.RemoveRange(classInfos);
db.SaveChanges();
return View();
} -
查询
public ActionResult select(){
//精确查询
var classinfo = db.ClassInfos.Where(p => p.Name==“06”);
//模糊查询
var classinfo2 = db.ClassInfos.Where(p => p.Name.Contains(“2018”)).ToList();
//组合查询,查询学期为1,老师为1的班级
var classinfo3 = db.ClassInfos.Where(p => p.Name == 1 && p.TeacherID==1).ToList();
//组合查询,查询学期为2或者老师为2的班级
var classinfo4 = db.ClassInfos.Where(p =>
p.Term == 2 || p.TeacherID == 2).ToList();
return View();
}