Entity Framework框架是什么?
EF是一个对象关系映射(ORM)框架,它能使开发人员用关系型数据定义特定领域的对象。
Entity Framework框架的作用
开发人员不再需要编写大量的数据库访问代码。使用Entity Framework,开发人员用Linq帮助他们进行查询,检索出的数据自动生成强类型对象。EF提供如变动追踪,身份验证,延迟加载,查询编译使得开发人员更加专注于他们的业务逻辑上而不是数据访问模块的开发上。EF是基于ADO.NET上进行增强的,它为开发人员提供了自动的数据持久化机制。
Entity Framework框架的使用
EF有三种使用场景,1. 从数据库生成实体类,2.由实体类生成数据库表结构,3. 通过数据库可视化设计器设计数据库,同时生成实体类。
Entity Framework框架增删查改的简单例子
数据库结构
Entity Framework框架新增的三种方法
RbacDBEntities db = new RbacDBEntities();
//第一种方法
Role role = new Role()
{
Name = "人事经理"
};
db.Roles.Add(role);
db.SaveChanges();
//第二种方法
Role role1 = new Role()
{
Name = "财务经理"
};
db.Entry(role1).State = System.Data.Entity.EntityState.Added;
db.SaveChanges();
//第三种方法
List<Role> roles = new List<Role>()
{
new Role()
{
Name = "销售经理"
},
new Role()
{
Name = "仓库经理"
}
};
db.Roles.AddRange(roles);
db.SaveChanges();
Entity Framework框架修改的两种种方法
var role= db.Roles.FirstOrDefault(p => p.ID ==6);
role.Name = "人事经理2";
Role role2 = new Role()
{
ID = 8,
Remark = "666",
Name = "财务经理2"
};
db.Entry(role2).State = System.Data.Entity.EntityState.Modified;
db.SaveChanges();
Entity Framework框架删除的三种办法
List<Role> roles = db.Roles.Where(p => p.Remark="666").ToList();
db.Roles.RemoveRange(item);
db.SaveChanges();
var role = db.Roles.FirstOrDefault(p => p.ID == 10);
db.Entry(role).State = System.Data.Entity.EntityState.Deleted;
db.SaveChanges();
Role role3 = new Role()
{
ID = 11
};
db.Entry(role3).State = System.Data.Entity.EntityState.Deleted;
db.SaveChanges();