【问题标题】:What is the difference between a Navigation Property and an Association in EF?EF 中的导航属性和关联有什么区别?
【发布时间】:2011-06-24 15:34:26
【问题描述】:

我使用 EF4。

希望我的问题不是太琐碎:

What is the difference between a Navigation Property and an Association in EF?

如果你能给我一个简单的例子解释将非常感谢!

【问题讨论】:

    标签: entity-framework entity-framework-4


    【解决方案1】:

    关联是两种实体类型之间关系的定义(也称为外键)

    导航属性实际上是一种允许您从关联的一端遍历到另一端的属性。

    编辑:对不起,你想要一个例子。

    查看此 MS 文档。很明显的区别。

    Navigation Properties

    Association Types

    公然内联他们的文档(自托管图像):

    PublishedBy 和 WrittenBy 是关联。它们将 Book/Publisher 和 Book/Author 联系在一起(ala 外键)

    注意 Publisher 和 Author 实体中的 图书。这个“导航属性”允许您遍历书籍实体并检索它的信息。 (例如 Author.Books.Title)

    希望能解释清楚!

    【讨论】:

    • 感谢您的解释......所以我低估了 BNavigational 属性是可选的吗?正确的?再次感谢您的宝贵时间
    • 是的,导航属性是可选的。如果您不需要导航,则没有必要。
    【解决方案2】:

    我相信关联充当外键,而导航属性允许您在代码中的相关实体之间“导航”。

    Foreign Key Association in Entity Framework 4

    编辑

    此外,您似乎不能拥有没有外键(关联)的导航属性:Navigation Property without Declaring Foreign Key

    【讨论】:

      【解决方案3】:

      导航属性反映了两个实体之间的关系,外键是用EF来定义两个表或实体之间关系的方式之一。

      【讨论】:

        猜你喜欢
        • 2010-09-20
        • 2016-04-29
        • 2011-11-14
        • 1970-01-01
        • 2015-05-30
        相关资源
        最近更新 更多