我想指定一个价格的十进制字段必须> = 0但我真的不想强加一个最大值.
这是我到目前为止所做的......我不确定这样做的正确方法是什么.
[Range(typeof(decimal), "0", "??"] public decimal Price { get; set; }
Run Code Online (Sandbox Code Playgroud) 在旧版应用程序中,大多数字符串属性不能为null,并且需要具有默认值string.empty.
我知道可以通过迁移执行此操作,但我正在寻找使用流畅配置界面执行此操作的方法:
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Properties<string>().Configure(c =>
{
c.HasMaxLength(255);
if (!c.ClrPropertyInfo.IsDefined(typeof (NullableAttribute), false))
{
c.IsRequired();
// I want to set a default value (string.empty) here.
}
}
Run Code Online (Sandbox Code Playgroud)
有没有办法做到这一点,或者我注定要初始化实体构造函数中的所有字符串?