使用entity framework,可以不用编写sql语句,直接像操作本地对象一样操作数据库中的数据。并且支持大部分数据库(包括oracle)
可以直接添加edmx数据。如下图
后续按照指引一直下一步即可完成edmx的创建,创建的edmx如下。
在生成的content.cs的文件中已经自动继承Dbcontent,可以直接操作该类中的获取数据对象的属性获取数据库中的数据。
新增操作
private void Add() { using (dwmjDbContext db = new dwmjDbContext()) { var listMjsbxx = new List<mjsbxx> { new mjsbxx { zjid = "A", ldbh = "50", UPDATETIME = new DateTime(2016, 4, 7) }, new mjsbxx { zjid = "B", ldbh = "50", UPDATETIME = new DateTime(2016, 4, 8) } }; db.mjsbxx.AddRange(listMjsbxx); db.SaveChanges(); } }
查询操作
private List<mjsbxx> Select() { using (dwmjDbContext db = new dwmjDbContext()) { var mjsbxxs = db.mjsbxx.Where(p=>p.zjid== "A").ToList(); return mjsbxxs; } }
更新操作
private void Update() { using (dwmjDbContext db = new dwmjDbContext()) { var mjsbxxs = db.mjsbxx; if (mjsbxxs.Any())//序列中有元素 { var mjsbxxModel = mjsbxxs.First(d => d.zjid == "A"); mjsbxxModel.zjid = "AC"; db.SaveChanges(); } } }
删除操作
private void Delete() { using (dwmjDbContext db = new dwmjDbContext()) { var mjsbxxModel = db.mjsbxx.Single(d => d.zjid == "A"); if (mjsbxxModel != null)//序列中有元素 { db.mjsbxx.Remove(mjsbxxModel);//如果满足条件,就将该对象使用Remove方法标记为Deleted db.SaveChanges();//最后持久化到数据库 } } }