好吧,這可能是微不足道的,但我希望有人能給我一個直截了當的答案。假設您在MVC項目中有兩個模型,並且一個模型包含另一個模型的列表。這兩個模型看起來像這樣:模型包含它自己的模型類型列表(遞歸建模?)
public class Vehicle
{
[Key]
public int VehicleId { get; set; }
public virtual List<Wheel> Wheels { get; set; }
}
public class Wheel
{
[Key]
public int WheelId { get; set; }
[Required]
public int VehicleId { get; set;}
[Required]
public virtual Vehicle { get; set; }
}
現在讓我們假設你有同樣的事情,但只有一個模型。在第一個想到的,我認爲這將是這個樣子:
public class MyClass
{
[Key]
public int MyClassId { get; set; }
public string MyData { get; set; }
public virtual List<MyClass> MyClasses { get; set; }
}
這引發我離開只是因爲MyClasses
被指定爲導航屬性。這意味着每個MyClasses[i]
將必須具有MyClass
財產和另一個MyclassId
都參考父母MyClass
。想了一會兒之後,我開始頭暈目眩。我是否以正確的方式去做這件事?
什麼是你想實現什麼? – Maciej
正是我發佈的。我猜想唯一的補充就是說'MyClass'的數據是通過組合'MyClasses'中每個對象的數據來確定的。 –
Google'自引用模型實體框架'我看到很多使用'代碼優先'的例子,你可以用它來解決它的屬性。 –