EF的增删改查
EF的新增
方法一
var classinfo = new ClassInfo()
{
Name = "2018173801",
Remark = "七班",
TeacherID = 1,
Term = 2
};
db.ClassInfos.Add(classinfo);
//db.Entry(classinfo).State = System.Data.Entity.EntityState.Added;
db.SaveChanges();
return RedirectToAction("index","classinfo");
方法二
var classinfo = new ClassInfo()
{
Name = "2018173801",
Remark = "七班",
TeacherID = 1,
Term = 2
};
//db.ClassInfos.Add(classinfo);
db.Entry(classinfo).State = System.Data.Entity.EntityState.Added;
db.SaveChanges();
return RedirectToAction("index","classinfo");
批量新增
public ActionResult AddRange() {
List<ClassInfo> classInfos = new List<ClassInfo>()
{
new ClassInfo(){
Name = "2018173802",
Remark = "二班",
TeacherID = 1,
Term = 2
},
new ClassInfo(){
Name = "2018173803",
Remark = "三班",
TeacherID = 2,
Term = 2
}
};
db.ClassInfos.AddRange(classInfos);
db.SaveChanges();
return RedirectToAction("index", "classinfo");
}
public ActionResult Delete(int? id) {
var classinfo = db.ClassInfos.Find(id);
//db.ClassInfos.Remove(classinfo);
db.Entry(classinfo).State = EntityState.Deleted;
db.SaveChanges();
return RedirectToAction("index", "classinfo");
}
EF的删除
方法一
public ActionResult Delete(int? id) {
var classinfo = db.ClassInfos.Find(id);
db.Entry(classinfo).State = EntityState.Deleted;
db.SaveChanges();
return RedirectToAction("index", "classinfo");
}
方法二
public ActionResult Delete(int? id) {
var classinfo = db.ClassInfos.Find(id);
db.ClassInfos.Remove(classinfo);
db.SaveChanges();
return RedirectToAction("index", "classinfo");
}
批量删除
List<ClassInfo> classInfos = db.ClassInfos.Where(p => p.Remark == "六班").ToList();
db.ClassInfos.RemoveRange(classInfos);
db.SaveChanges();
EF的修改
方法一
先查询再修改,修改某个属性,不会影响到其他属性的变化。
var a = db.ClassInfos.Find(2);
a.Name = "2018173809";
db.SaveChanges();
方法二
new一个对象,将对象的状态改为修改状态,这样可能将其他属性设置为空。
var classinfo = new ClassInfo() {
ID=11,
Remark="四班"
};
db.Entry(classInfo).State = EntityState.Modified;
db.SaveChanges();
EF的查询
将数据库的数据查询显示到页面上面。
精确查询
public ActionResult Index()
{
var classinfo = db.ClassInfos.Where(p=>p.Name=="2018173806").ToList();
return View(classinfo);
}
模糊查询
public ActionResult Index()
{
var classinfo = db.ClassInfos.Where(p=>p.Name.Contains=="2018173806").ToList();
return View(classinfo);
}
组合查询
并列条件组合查询
public ActionResult Index()
{
var classinfo = db.ClassInfos.Where(p=>p.Name=="2018173806"
&&p.TeacherID==1).ToList();
return View(classinfo);
}
或者条件组合查询
public ActionResult Index()
{
var classinfo = db.ClassInfos.Where(p=>p.Name=="2018173806"
||p.TeacherID==1).ToList();
return View(classinfo);
}
本文详细介绍了使用Entity Framework进行数据库操作的方法,包括单个和批量的增删改查操作,以及精确查询、模糊查询和组合查询的实现方式。
6147

被折叠的 条评论
为什么被折叠?



