我是实体框架和数据库优先方法的新手。谁能帮帮我吗?
情况如下:
我有一个干净、普通的域类(Person),只有属性。这个类是在一个 VS 项目中定义的,它只包含领域类,没有任何对实体框架或其他属于数据访问层的东西的引用。
我还有一个数据库表(tblPerson)。我为它创建了一个 EDMX 并使用 DbContext Generator 为其创建 POCO 类。
使用域类将实体框架引用与项目分开很重要,我想使用结合依赖注入的存储库模式。
问题是:
如何将实体框架 POCO 类“映射”到我现有的域类?它们具有相同的属性。我读过一些关于代理、伙伴课程等的内容,但没有找到任何好的例子。
请帮忙。
假设域模型类看起来像这样(只是一个例子):
public class Person
{
public int Id { get; set; }
public string Name { get; set; }
}
并且数据库表具有相同的列:
Id (int, not null, 主键) Name (nvarchar(50), not null)
更新:
好的,我找到了解决方案。我做了 Ladislav Mrnka 的建议并从 ObjectContext 派生。这是一个描述它是如何完成的页面:Entity Framework 4.0 – Part4: How to use your own POCO's