外键mvc 4代码第一个c#
本文关键字:第一个 代码 mvc 外键 | 更新日期: 2023-09-27 18:27:31
如何将外键添加到模型(代码优先)
我有一个模型产品,它有一个ID(主键),我想把它添加到我的模型订单中。
public class Order
{
public int ID {get; set;}
[Required]
public int Total {get; set;}
[Required]
public int ProductId{get; set;}
}
但是我如何使ProductId像外键一样引用我的产品模型的id呢?在Stackoverflow上有很多相似的问题,但都有不同的答案,但它们对我不起作用。我真的希望有人能找到解决方案,或者能给我一个正确的解释。
您需要添加一个导航属性:
public virtual Product Product { get; set; }
因此Order类将如下所示:
public class Order
{
public int ID {get; set;}
[Required]
public int Total {get; set;}
[Required]
public int ProductId{get; set;}
[Required]
public virtual Product Product { get; set; }
}
此外,严格地说,一旦拥有了虚拟Product属性,就不需要ProductId
属性。
您可以这样做:
public class Order
{
public int ID {get; set;}
[Required]
public int Total {get; set;}
[Required]
public int ProductId{get; set;}
[ForeignKey("ProductId")]
public virtual Product Product {get; set;}
}