我正在尝试使用ForeignKeyAttribute
. 我遇到了一些网站,这些网站描述了一种使用ForeignKeyAttribute
.
以下是两个代码示例:
第一个:
public class Customer
{
public int ID { get; set; }
public int OrderID { get; set; }
// Some other properties
[ForeignKey("OrderID")]
public virtual Order Order { get; set; }
}
public class Order
{
public int ID { get; set; }
public int CustomerID { get; set; }
// Some other properties
[ForeignKey("CustomerID")]
public virtual Customer Customer { get; set; }
}
第二个:
public class Customer
{
public int ID { get; set; }
[ForeignKey("Order")]
public int OrderID { get; set; }
// Some other properties
public virtual Order Order { get; set; }
}
public class Order
{
public int ID { get; set; }
[ForeignKey("Customer")]
public int CustomerID { get; set; }
// Some other properties
public virtual Customer Customer { get; set; }
}
在第一个代码示例中,ForeignKeyAttribute
放置在public virtual Customer Customer { get; set; }
.
并在public int CustomerID { get; set; }
(Order- 和 CustomerID)上的第二个代码示例中。
我的问题是,我怎么知道在哪种情况下使用哪种方法?
我知道这也可以使用 来完成Fluent API
,但目前与这个问题无关。