什么是EF框架
开发人员可以通过概念性应用程序编程模式老创建应用程序。
EF框架的优点
- EF应用程序是以应用程序为中心开发的一种模式。
- EF应用程序不再对特定的数据引擎和存储架构依赖。
- 可以集于多个概念性模型映射到一个存储架构上。
4种增删查改的使用(含EF增删查改)
在vs里的4种增删查改
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApp6
{
class Program
{
static void Main(string[] args)
{
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();
}
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();
}
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();
}
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();
}
}
}