我有一个复合键的模型 - 行是关键:
public class Item
{
[Key, Column(Order = 0)]
public int UserId { get; set; }
[Key, Column(Order = 1)]
public DateTime? Date { get; set; }
}
运行它下面的代码抛出异常DbEntityValidationException
与消息: The Date field is required.
:
var it = new Item { Date = null, UserId = 2 };
m_Entities.Items.Add(it);
m_Entities.SaveChanges(); // throws exception
( m_Entities
是平常DbContext
被定义为项目后裔DbSet<Item>
)为什么Date
是否可以要求null
(声明DateTime?
而如何让null
成为一个有效的价值Date
?