使用CodeFirst模式做数据访问层。
第一步,建立一个类库项目,添加EntityFramework.dll和System.Data.Entity.dll的引用。
第二步,创建实体对像。EF将根据实体对象在数据库中生成表。例:
public class CarColor
{
public long ModelID { get; set; }
public string ColorName { get; set; }
public string ColorUrl { get; set; }
}
第三步,创建***DbContext模式的类文件,此类继承EntityFramework.dll里的System.Data.Entity下的DbContext类。此类是做数据访问用的。此类将会自动封装曾删改查的方法。例:
public class GYEPDbContext : DbContext
{
/// <summary>
/// name对应的名称是App.Config或Web.Config中的链接串的名称。
/// <connectionStrings>
/// <add name="GYEPDbContext" connectionString="" providerName="System.Data.SqlClient"/>
/// </connectionStrings>
/// 如果类名和配置文件中的链接串名相同,则可以不用创建此构造方法。
/// </summary>
public GYEPDbContext()
: base("name=GYEPDbContext")
{
}
//对应数据库中的一张表,代表此表的集合
//数据库中有多少表,就在这里创建多少个这样的属性。
public DbSet<CarColor> CarColors { get; set; }
}
第四步,使用,如WebForm、WinForm、控制台应用程序、MVC等项目。需要在这些项目中引用上面创建的数据访问层类库即可。例:
//创建数据访问层对象。
GYEPDbContext context = new GYEPDbContext();
//向数据库中添加实体对象。
context.Models.Add(new CarColor { ModelID = 1, ColorName = "aa" });
//保存到数据库
context.SaveChanges();