0
public class MyConfiguration : EntityTypeConfiguration<MyCode>
{
public MyConfiguration()
{
HasKey(c => new { c.MyCodeId, c.EffectiveDateFrom, c.EffectiveDateTo });
Property(c => c.MyCodeId).HasColumnName("MyCode");
Property(c => c.EffectiveDateFrom).HasColumnName("MyEffectiveDateFrom");
Property(c => c.EffectiveDateTo).HasColumnName("MyEffectiveDateTo");
ToTable("My_CODES");
HasMany(d => d.MyGroups).WithRequired().HasForeignKey(k => k.MyCodeID);
}
}
這是我在EF4中的配置類。組合鍵EF映射
我已經定義了IList<MyGroup>
類型的「MyGroups」屬性。
「MyGroup」類沒有「EffectiveDateFrom」和「EffectiveDateTo」屬性。
運行時間以下拋出異常:
System.Data.Edm.EdmAssociationConstraint:在一個關係約束的從屬和主角色屬性的數目必須是相同的。
查詢:
如何EF4造成這種映射,當家長使用的所有列是不可用的子表?
這在數據庫中看起來像什麼?如果MyCodeId沒有唯一標識一個MyCode記錄,MyGroup記錄如何知道它引用了哪條記錄? – 2012-08-07 10:00:59
MyGroup表具有列MyCodeId,GroupNumber和TabNumber的組合鍵conscons – user1581337 2012-08-07 11:20:04
您的數據庫是否需要更改?如果是這樣,請添加一個主鍵並讓其他字段用作備用鍵。無論如何,有意義的主鍵都是令人討厭的。 – 2012-08-07 12:41:47