EF实现增删查改的四种方法
创建一个控制台应用程序,添加model实体类,实体类名称RbacDBEntities
数据库表名Roles
里面有编号,姓名,备注三个字段
1.EF实现新增的四种方法
public static void Add(){
RbacDBEntities db = new RbacDBEntities();
//方式1 Add
var roles1 = from r in db.Roles
where r.Name.Contains("主任")
select r;
//方式2
var roles2 = db.Roles
.Where(p => p.Name.Contains("主任"))
.Select(p => p).ToList();
//方式3调用方sql
string sql = @"select * from roles where name like '%主任%'";
db.Database.SqlQuery<Role>(sql);
db.SaveChanges();
//方式4,调用存储过程
List<cp_select_role_Result> roles11= db.cp_select_role("主任").ToList();
Console.Read();
}
2.EF实现删除功能的四种方法
public static void Delete()
{
RbacDBEntities db = new RbacDBEntities();
//方式1 Add
Role r1 = db.Roles.Find(1074);
db.Roles.Remove(r1);
db.SaveChanges();
//方式2
Role r2 = new Role()
{
ID = 1075
};
db.Entry(r2).State = System.Data.Entity.EntityState.Deleted;
db.SaveChanges();
//方式3调用方sql
string sql = @"delete roles where id=1076";
db.Database.ExecuteSqlCommand(sql);
db.SaveChanges();
//方式4,调用存储过程
db.cp_delete_role(1077);
Console.Read();
}
3.EF实现修改的四种方式
public static void Edit()
{
RbacDBEntities db = new RbacDBEntities();
//方式1 Add
Role r1 = db.Roles.Find(1074);
r1.Name = "修改1";
r1.Remark = "修改备注1";
db.SaveChanges();
//方式2
Role r2 = new Role()
{
ID = 1075,
Name = "修改2",
Remark = "修改备注2"
};
db.Entry(r2).State = System.Data.Entity.EntityState.Modified;
db.SaveChanges();
//方式3调用方sql
string sql = @"update roles set name='修改3',remark='修改备注3' where id=1076";
db.Database.ExecuteSqlCommand(sql);
db.SaveChanges();
//方式4,调用存储过程
db.cp_update_role(1077, "修改4", "修改备注4");
Console.Read();
}
4.EF实现查询的4种方式
public static void ADD()
{
RbacDBEntities db = new RbacDBEntities();
//方式1 Add
Role r1 = new Role()
{
Name = "方式1",
Remark = "备注1"
};
db.Roles.Add(r1);
db.SaveChanges();
//方式2
Role r2 = new Role()
{
Name = "方式2",
Remark = "备注2"
};
db.Entry(r2).State = System.Data.Entity.EntityState.Added;
db.SaveChanges();
//方式3调用方sql
string sql = @"insert into roles values('方式3','备注3')";
db.Database.ExecuteSqlCommand(sql);
db.SaveChanges();
//方式4,调用存储过程
db.cp_insert_role("方法4", "备注4");
Console.Read();
}