1、新增的两种方式
1.1直接新增
var classinfo = new ClassInfo()
{
Name = "2018173807",
Remark = "七班",
Term = 2,
TeacherID = 1
};
db.ClassInfos.Add(classinfo);
db.SaveChanges();
1.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();
2.删除
2.1删除,先查询后删除,删除ID为3的
var a = db.ClassInfos.Find(3);
db.ClassInfos.Remove(a);
db.SaveChanges();
2.2、改变状态进行删除
var clasinfo1 = new ClassInfo()
{
ID = 3
};
db.Entry(clasinfo1).State = System.Data.Entity.EntityState.Deleted;
2.3批量删除,备注为四班的批量删除
List classInfos1 = db.ClassInfos.Where(p => p.Remark == “四班”).ToList();
db.ClassInfos.RemoveRange(classInfos1);
3、修改
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;
4.查询
4.1://精确查询 查询班级是2018173805
var classinfo3 = db.ClassInfos.Where(p=>p.Name== "2018173805").ToList(); //没有ToList将
只会有一个查询语句,不会有结果
4.2: //模糊查询 查询班级号含有2018的
var classinfo4 = db.ClassInfos.Where(p => p.Name.Contains("2018")).ToList(); //Contains就
是包含的意思
4.3:组合查询 查询学期为1的,同时教师也是1的
var classinfo5 = db.ClassInfos.Where(p => p.Term == 1 && p.TeacherID == 1).ToList();
4.4 组合查询 查询学期是1的或者教师也是1的
var classinfo6 = db.ClassInfos.Where(p => p.Term == 1 || p.TeacherID == 1).ToList();