C# 具有实体框架6 fluent API且不带导航属性的复合主键
我找到了很多关于这个的帖子,但就是找不到我喜欢的解决方案 我有一节这样的课C# 具有实体框架6 fluent API且不带导航属性的复合主键,c#,entity-framework,mapping,C#,Entity Framework,Mapping,我找到了很多关于这个的帖子,但就是找不到我喜欢的解决方案 我有一节这样的课 public Class1{ int Year{get;set;} Class2 Class2Field {get;set;} //.... other non key field } 我想以这种方式映射密钥: HasKey(u => new { u.Class1.Year, u.Class1.Class2Field.id }); 我的对象中没有Class2Field.Id属性:不需要也
public Class1{
int Year{get;set;}
Class2 Class2Field {get;set;}
//.... other non key field
}
我想以这种方式映射密钥:
HasKey(u => new { u.Class1.Year, u.Class1.Class2Field.id });
我的对象中没有Class2Field.Id属性:不需要也不喜欢
ORM必须正确地映射它,而不强迫域模型具有不可用的属性
有没有解决办法
我唯一的想法是创建一个guid作为我的对象键,并使实际键仅为必需属性,如下所示:
public Class1{
int Id{get;set;}
int Year{get;set;}
Class2 Class2Field {get;set;}
//.... other non key field
}
HasKey(u => new { u.Class1.Id});
但我还是不太喜欢这个
NHibernate fluent能解决这个问题吗?没有人有更好的主意吗?只是希望得到一些答案