是否有可能在實體框架6中使用代碼優先和註釋創建單向多對多關聯?例如:實體框架6代碼優先 - 通過註釋多對多的方式
class Currency
{
public int id { get; set; }
}
class Country
{
public int id { get; set; }
// How i can annotate this property to say EF that it is many-to-many
// and it should create mapping table?
// I don't need navigation property to Country in Currency class!
public virtual IList<Currency> currencies { get; set; }
}
在支持Java + JPA批註我可以實現我所需要的是這樣的:
@OneToMany
@JoinTable(name = "MAPPING_TABLE", joinColumns = {
@JoinColumn(name = "THIS_ID", referencedColumnName = "ID")
}, inverseJoinColumns = {
@JoinColumn(name = "OTHER_ID", referencedColumnName = "ID")
})
是這樣,EF具有相同的功能?
謝謝......有沒有可能只使用註釋來執行此配置? – Anton
我認爲你可以做的最好的做法是明確建模連接表。因此,將CountryCurrency類與您的其他EF對象一起製作,然後用「ICollection」替換Country對象中的「currency」屬性。但是,這存在可用性方面的缺點,因爲EF不會爲您自動在後臺執行JOIN。 –
奇怪的是,沒有辦法用屬性來做到這一點。 EF是一團糟。 – yonexbat