适当的导航属性用法

时间:2012-07-12 19:51:41

标签: asp.net-mvc asp.net-mvc-3 entity-framework-4.1

我知道这可能是一个非常迟钝的问题,但代表查询表的实体是否需要导航属性?

例如

public class State
{
    public int StateId      { get; set; }
    public string StateName { get; set; }
    public string StateAbbr { get; set; }

    public virtual ICollection<AccreditingAgency> AccreditingAgencies { get; set; }
}


public class AccreditingAgency
{
    public int AccreditingAgencyId { get; set; }
    public string AgencyName { get; set; }
    public string AgencyAddress { get; set; }
    public string AgencyCity { get; set; }
    public int StateId { get; set; }
    public string AgencyZipCode { get; set; }
    public string AgencyWebsite { get; set; }

    public virtual State State { get; set; }
}

此外,在上面的示例中,我是否应该在AccreditingAgency中拥有状态导航属性?

实际上,当使用导航属性时?

感谢您的任何澄清。

1 个答案:

答案 0 :(得分:0)

导航属性纯粹是为了您的利益。

如果您希望能够找到该州的所有认证机构,请包含第一个导航属性。

如果您想了解认证机构所处的状态,请包含第二个导航属性。

如果你真的不想知道其中任何一个,那么可能两个实体根本没有联系。