【发布时间】:2017-07-16 19:32:16
【问题描述】:
我有一个订单
如何设置?当我尝试插入具有空 customerid 的用户时,它告诉我它不能为空。
型号如下:
public class Order
{
public long OrderID { get; set; }
public int CustomerID { get; set; }
public virtual Customer Customer { get; set; }
public virtual ICollection<OrderDetail> OrderDetails { get; set; }
}
public partial class Customer
{
public int CustomerID { get; set; }
}
在DbContext:
modelBuilder.Entity<Customer>()
.HasMany(e => e.Orders)
.WithRequired(e => e.Customer)
.WillCascadeOnDelete(false);
【问题讨论】:
-
你需要使
CustomerID属性可以为空:public int? CustomerID { get; set; } -
您能否澄清您的问题,因为我不明白“用户属于一个国家,但可能不属于任何(空外键)”。这对你来说代表着什么?它与您提供的 Order 类有什么关系?请对您的问题更准确一点。或者,据我观察,您可以尝试使
CustomerID属性为空。 (edit: 就像上面提到的@Felipe Cruze :)) -
您在谈论用户和国家/地区的问题,但代码涉及客户和订单。对我没有意义
标签: c# entity-framework