[为清晰起见而编辑]
这是我的情景 我设法创建了我的数据库的POCO模型,只包含两个表,博客和帖子。[模型]
我想创建另一个引用这些类的项目,并为它添加一些数据库持久性代码,我不知道如何。 [DAL]
稍后,在[BLL]中使用此[DAL]来验证数据并将其呈现给[Presentation]。
在其他项目中,我使用EF但没有创建POCOS,所以我最终在BLL中获得了数据访问代码,这次我试图将事情严格区分开来。
在过去,EF为我做了一切,我只是添加了一个模型,然后我可以调用SaveChanges()。现在,我是否必须在尝试创建的新[DAL]中编写自己的“insert..into ...”?必须有一种自动化的方式
答案 0 :(得分:1)
我创建了Entity Framework using N-Layer model的草稿项目。
NLayerEF.Data
包含数据库模型(.edmx文件和.sql文件)
NLayerEF.Domain
包含无知的持久类
NLayerEF.Infrastructure
包含一个继承自DbContext
的类,这是您与数据库通信所需的内容。添加属性
public DbSet<TYPE> EntitySetName { get; set; }
您将把.edmx文件中描述的表格映射到此属性
public partial class StackOverflowEntities : DbContext
{
public DbSet<Post> Post { get; set; } // Table Post
public DbSet<User> User { get; set; } // Table User
public DbSet<Tag> Tag { get; set; } // Table Tag
}