我有一個類AgentBalance與關聯代理,即:EF代碼優先流利的API指定外鍵屬性
public class AgentBalance
{
...
public int AgentId { get; set; }
public virtual Agent Agent { get; set; }
}
AGENTID被檢測爲FK由約定的委託代理關係,但我想在Mapping類中明確表示,以便對未來的變化更安全。如果代理有餘額的集合,然後我知道如何做到這一點例如爲:
HasRequired(t => t.Agent).WithMany(a => a.Balances).HasForeignKey(t => t.AgentId);
然而,代理不有餘額的集合 - 我不希望該協會是反向通航。但沒有映射中的.WithMany,我沒有選擇指定.HasForeignKey。有另一種方法嗎? (N.B.我知道我也可以使用屬性來做到這一點,但我想使用流暢的API映射)。
謝謝 - 我已經錯過了WithMany()超載!儘管如此,似乎是一種奇怪的語法我不明白他們爲什麼不能讓你寫下如下內容:HasRequired(t => t.Agent).HasForeignKey(t => t.AgentId) –
EF沒有辦法知道類型它的關係。 – SOfanatic
這不適合我。 EF除了我已經明確配置爲外鍵列的AgentId外,還創建了一個新的Agent_Id列。你知道爲什麼會發生這種情況嗎? – Yulian