利用EF框架做增删改
(表名为ClassInfo)
一、新增
1:直接新增
var classinfo = new ClassInfo()
{
Name = “2018173807”,
Remark = “七班”,
Term = 2,
TeacherID = 1
};
db.ClassInfos.Add(classinfo);
db.SaveChanges();
2:改变状态进行新增
var student = new Student()
{
ClassInfoID=1,
Name =“张三”,
Remark =“厉害”,
No=“10”,
Tel =“123123112”,
StudentType =1,
IsAtCollege=true
};
db.Entry(student).State = System.Data.Entity.EntityState.Added;
db.SaveChanges();
二、删除
1:删除,先查询后删除,删除ID为3的
var a=db.ClassInfos.Find(3);
db.ClassInfos.Remove(a);
db.SaveChanges();
2:改变状态进行删除
var clasinfo1 = new ClassInfo() {
ID=3 }; db.Entry(clasinfo1).State = System.Data.Entity.EntityState.Deleted;
3:批量删除,备注为四班的批量删除
List classInfos1 = db.ClassInfos.Where(p => p.Remark ==
“四班”).ToList(); db.ClassInfos.RemoveRange(classInfos1);
三、修改
1:先查询后修改,这样不会影响其他字段
var q = db.ClassInfos.Find(3);
q.Name = “2018173804”;
db.SaveChanges();
2:new 对象,将对象的状态改为修改状态,这样可能会将其他属性设置为空
var classinfo = new ClassInfo()
{
ID=2,
Name = “2018173808”,
Remark = “八班”,
Term = 2,
TeacherID = 1
};
db.Entry(classinfo).State = System.Data.Entity.EntityState.Modified;
**
四、查询**
1:精确查询 查询班级是2018173805
var classinfo3 = db.ClassInfos.Where(p=>p.Name==
“2018173805”).ToList();
2: 模糊查询 查询班级号含有2018的(可用于搜索某个条件)
var classinfo4 = db.ClassInfos.Where(p =>
p.Name.Contains(“2018”)).ToList();