【发布时间】:2012-08-22 10:16:21
【问题描述】:
好的,这可能是微不足道的,但我希望有人能给我一个直截了当的答案。假设您在 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。想了一会儿,我开始头晕。我这样做是否正确?
【问题讨论】:
-
你想完成什么?
-
正是我发布的内容。我想唯一的补充就是
MyClass的数据是通过组合MyClasses中每个对象的数据来确定的。 -
Google
self-referencing model entity framework我看到很多使用code first的例子,你可以用它来计算属性。
标签: c# asp.net-mvc dependencies