ASP.NET EF四种方式实现增删查改

你熟练掌握了各种方式的增删查改了么,增删查改是代买编写最基本的知识,任何项目拆解出来都是增删查改,只要你能熟练的使用增删查改相信项目将不再是难点,楼主这篇文章将详细介绍 EF多种增删查改的实现方法,希望对大家有所帮助

    查询 删除 修改 新增

查询

   RbacDBEntities db = new RbacDBEntities();
            //方式1 EF查询语法
            var roles1 = from r in db.Roles
                         where r.Name.Contains("主任")
                         select r;
            //方式2 EF方法语法
            var roles2 = db.Roles
                .Where(p => p.Name.Contains("主任"))
                .Select(p => p).ToList();
            //方式3 EF调用原生sql
            string sql = @"select * from roles  where name like '%主任%'";
            db.Database.SqlQuery<Role>(sql);
            db.SaveChanges();
            //方式4,EF调用存储过程
          List<cp_select_role_Result> roles11=  db.cp_select_role("主任").ToList();
            Console.Read();

删除

public static void Delete()
        {
            RbacDBEntities db = new RbacDBEntities();
            //方式1 EF Add
            Role r1 = db.Roles.Find(1074);
            db.Roles.Remove(r1);
            db.SaveChanges();
            //方式 EF 通过改变要删除对象的状态为 Deleted
            Role r2 = new Role()
            {
                ID = 1075

            };
            db.Entry(r2).State = System.Data.Entity.EntityState.Deleted;
            db.SaveChanges();
            //方式3 EF调用方sql
            string sql = @"delete roles  where ;
            db.Database.ExecuteSqlCommand(sql);
            db.SaveChanges();
            //方式4,EF调用存储过程
            db.cp_delete_role(1077);
            Console.Read();
        }

修改

  public static void Edit()
        {
            RbacDBEntities db = new RbacDBEntities();
            //方式1 EF 查找要修改的对象 然后 .属性 赋值
            Role r1 = db.Roles.Find(1074);
            r1.Name = "修改1";
            r1.Remark = "修改备注1";
            db.SaveChanges();
            //方式2 EF 通过改变要删除对象的状态为 Modified
            Role r2 = new Role()
            {
                ID = 1075,
                Name = "修改2",
                Remark = "修改备注2"
            };
            db.Entry(r2).State = System.Data.Entity.EntityState.Modified;
            db.SaveChanges();
            //方式3 EF调用方sql
            string sql = @"update roles set name='修改3',remark='修改备注3' where ;
            db.Database.ExecuteSqlCommand(sql);
            db.SaveChanges();
            //方式4,EF调用存储过程
            db.cp_update_role(1077, "修改4", "修改备注4");
            Console.Read();

        }

新增

public static void ADD()
{
RbacDBEntities db = new RbacDBEntities();
//方式1 EF Add方法
Role r1 = new Role()
{
Name = “方式1”,
Remark = “备注1”
};
db.Roles.Add(r1);
db.SaveChanges();
//方式2 EF 通过改变要删除对象的状态为 Added
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();
}

栏目