【发布时间】:2016-06-10 07:42:57
【问题描述】:
首先,我对使用 C#、ASPNET 和 MS SQL 进行开发非常陌生,所以我可能只是在这里遗漏了一个简单的点,或者误解了一个基本概念,所以请耐心等待我 :)
我正在使用带有 .NET Framework 4 和 MVC2 的 Visual Studio Web Developer 2010 Express(必须使用此特定版本)。我还有 SQL Management Studio 10.5,我在其中创建了一个简单的表
现在我想将其用作实体模型,因此我在 Visual Studio 中创建了一个并添加了所有表(包括 ASPNET 用户表)和存储过程。
问题是结果...
我希望能够从 Kunden(createdBy, modifiedBy) 导航到 ASPNET 用户表,就像我可以从“Kunden”表访问“Geschenk”一样。出于同样的原因,我认为我将在这里拥有一个属性,而不是其中的 2 个。当然我可以重命名导航属性,但我想知道这是什么原因以及在这种情况下使用 aspnetusers 的正确方法是什么?
【问题讨论】:
-
你的期望是错误的。 EF 为每个外键引用构建一个唯一的导航属性。其中一个属性是创建 Kunden 记录的用户记录的映射,另一个是最后修改它的用户的用户记录的映射。
-
我还强烈建议更新到Community edition,因为此时不支持您使用的内容。
-
@TiesonT。所以 Navigation 属性不是为它在 sql 表中的同一个对象创建的,而是为它“链接到”的对象创建的?
-
或者这仅适用于 m:n 关系?那么Property的Name是如何确定的或者为什么不使用createdBy和modifiedBy作为Navigation Property呢?
-
第一个是肯定的,我不确定你说的第二个是什么意思。导航属性或多或少以其链接到的表/集命名。可能应该读this
标签: c# entity-framework asp.net-mvc-2 asp.net-identity sql-server-express