Database design 将DDD类映射到实体框架4.0生成的数据库模型
我想知道是否有人可以帮我解决这个问题,我目前有 基本上,我有一个遗留数据库,我必须处理。我创建了一些域类来表示我们的db模型。但是,域类不是与数据库表的直接一对一映射 这是旧数据库模型的快照: 我的一个域类是这样的:Database design 将DDD类映射到实体框架4.0生成的数据库模型,database-design,entity-framework-4,domain-driven-design,Database Design,Entity Framework 4,Domain Driven Design,我想知道是否有人可以帮我解决这个问题,我目前有 基本上,我有一个遗留数据库,我必须处理。我创建了一些域类来表示我们的db模型。但是,域类不是与数据库表的直接一对一映射 这是旧数据库模型的快照: 我的一个域类是这样的: public class Reading { public Location Location {get; set;} } public class Location { public string Name { get; set;} } 鉴于上述模型和域类,
public class Reading
{
public Location Location {get; set;}
}
public class Location
{
public string Name { get; set;}
}
鉴于上述模型和域类,如何映射它们
我发现的大多数文章都有直接的一对一映射
如果你们中有人能在这方面提供帮助,我们将不胜感激
提前感谢。您可以使用AutoMapper并编写自定义值解析器来映射和聚合对象
请参阅,更具体地说,了解自定义操作解析程序。您可以使用AutoMapper并编写自定义值解析程序来映射和聚合对象
请参阅,更具体地说,了解自定义操作解析器。您不能通过实体框架直接映射它们,因为域模型中的类不是实体(可以,但如果位置的
名称不唯一,则可能会产生各种不良后果)。第一个问题是,您的实体必须映射主键,并且主键必须是唯一的(我绝对不确定Reading
entity代表什么)
大多数文章都描述了整个表的映射,因为这是使用EF最简单的方法。实际上,在EDMX中只映射部分表数据意味着手动编写EDMX XML,这在a**中很痛苦。您可以通过使用EF4.1和fluent api(无EDMX)来解决此问题。如果您只想映射部分数据,并且仍然能够插入未映射列的新记录,则表必须可以为空。您不能通过实体框架直接映射它们,因为域模型中的类不是实体(可以,但如果位置的名称
不唯一,则可能会产生各种不良后果)。第一个问题是,您的实体必须映射主键,并且主键必须是唯一的(我绝对不确定Reading
entity代表什么)
大多数文章都描述了整个表的映射,因为这是使用EF最简单的方法。实际上,在EDMX中只映射部分表数据意味着手动编写EDMX XML,这在a**中很痛苦。您可以通过使用EF4.1和fluent api(无EDMX)来解决此问题。如果您只想映射部分数据,并且仍然能够插入未映射列的新记录,则表必须为空。EF支持“表/类型”(一对一映射)、“表/层次结构”,
“每种混凝土类型的表”、“表拆分”(分为多个实体)和
“实体拆分”(分为多个表)
你们的阅读表格似乎适合每种具体类型的表格
每种映射类型都可以在Google中轻松找到。
-搜索“实体框架”“每个具体类型的表”。EF支持“每个类型的表”(一对一映射),“每个层次结构的表”,
“每种混凝土类型的表”、“表拆分”(分为多个实体)和
“实体拆分”(分为多个表)
你们的阅读表格似乎适合每种具体类型的表格
每种映射类型都可以在Google中轻松找到。
-按具体类型搜索“实体框架”表。。我从来没有听说过每种混凝土类型的桌子。我会用谷歌搜索它,看看如何使用它。谢谢,很有趣。我从来没有听说过每种混凝土类型的桌子。我会用谷歌搜索它,看看如何使用它。谢谢