EF表具有对同一表的多个引用

时间:2014-04-07 09:18:09

标签: sql sql-server asp.net-mvc entity-framework

我有数据库第一实体框架模型

表格:

1)用户

  • Id

2)文章

  • 编号
  • UserCreated>参考用户上次编辑的用户
  • UserChanged>参考创建文章的用户

Enity Framework正在生成这样的模型

Partial Public Class Article
Public Property ID As Integer
Public Property UserCreated As Integer
Public Property UserChanged As Integer

Public Overridable Property User As User
Public Overridable Property User1 As User

End Class

现在我还有另一张像Vouchers的桌子,还有UserCreated和UserChanged,但是名字叫User1和User。

是否有任何方法可以在不更改类本身的情况下具体指定属性的名称,因为它是从数据库生成的。

2 个答案:

答案 0 :(得分:1)

您可以在User Created属性上使用Data Annotation来指定外键名称:

[ForeignKey("UserCreated")]

http://msdn.microsoft.com/en-gb/data/gg193958.aspx

答案 1 :(得分:1)

您可以使用property name轻松地将User1的{​​{1}}更改为任何其他名称。

但您应该知道edmx-Designer是对User列的引用。因为UserCreated可能引用User。你应该检查一下。最好的方法是检查关系的名称。因此,您需要为关系提供一个有意义的名称,以便您能够区分它们。然后,您可以右键单击UserChanged并检索关系名称。