在了解Entity Framework是什么前,咱们先的知道ORM是什么,ORM是一种对象关系映射思想,咱们能够这样理解:数据库
简称EF是微软对ORM(对象关系映射)思想的一种框架,底层仍然是ADO.NET,即对数据库的访问。c#
开始操做前,先创建一个数据库bash
namespace EFDemo
{
class Program
{
static void Main(string[] args)
{
Add();
Console.ReadKey();
}
private static void Add()
{
EFDemoEntities ef = new EFDemoEntities();//实例化上下文
EFTableSet user = new EFTableSet()//实例化一个用户类
{
Id=1,
Name="张三",
Age="19"
};
ef.EFTableSet.Add(user);//添加到数据对象里
ef.SaveChanges();//保存到数据库
}
}
}
复制代码
private static void Select()
{
EFDemoEntities ef = new EFDemoEntities();//实例化上下文
var list = ef.EFTableSet.Where(m => true).ToList();//lambda表达式查询
var list2 = from item in ef.EFTableSet select item;//link表达式查询
foreach (var item in list2)
{
Console.WriteLine(" "+item.Id+" "+item.Name+" "+item.Age);
}
}
复制代码
private static void Update(int id)
{
EFDemoEntities ef = new EFDemoEntities();//实例化上下文
EFTableSet user = ef.EFTableSet.Where(m => m.Id == id).FirstOrDefault();//FirstOrDefault查询第一个
if (user != null)
{
user.Name = "李四";
user.Age = "20";//修改的内容
ef.EFTableSet.Attach(user);//附加到上下文
ef.Entry<EFTableSet>(user).State = System.Data.Entity.EntityState.Modified;//修改实体的状态为修改
ef.SaveChanges();//保存到数据库
Console.WriteLine("修改为功");
}
else
{
Console.WriteLine("查询不到对象,没法修改");
}
}
复制代码
EF可以以相对传统开发编写更少的代码来建立和维护应用程序框架
呼~可算写完了,咱们使用EF能够发现,他很是方便,不须要咱们去写SQL语句了,并且他是强类型的,固然对于一些复杂的查询咱们仍然可在EF中使用!性能