【发布时间】:2018-06-02 15:37:20
【问题描述】:
我有一个名为TotalVolume 的属性,它是Double。在构建数据库时的代码优先方法中,属性TotalVolume 默认具有Not Null 值。我想让属性TotalVolume 也接受Null 值。
我用的是FluentAPI,我做的改动如下:
modelBuilder.Entity<Employee>()
.Property(p => p.TotalVolume)
.IsRequired(false);
当我Add-Migration 时出现以下错误:
实体类型“Employee”的属性“TotalVolume”不能标记为可为空/可选,因为该属性的类型是“double”,它不是可为空的类型。任何属性都可以标记为不可空/必需,但只有可空类型且不属于主键的属性才能标记为可空/可选。
此后,我尝试了以下方法,在 Employee 模型中进行了以下更改。
public double? TotalVolume{ get; set; }
但是,当我更新数据库时,TotalVolume 的数据类型已更改为 float。我希望数据类型仍保持为double。
【问题讨论】:
-
你的意思是付款还是总量?
-
错字应该是 TotalVolume
标签: c# entity-framework ef-fluent-api