我认为对于经验丰富的程序员来说,这应该很简单,但这确实可行。我正在首先使用实体框架代码进行项目开发,还启用了迁移功能并将其设置为自动(可爱功能)。
我在实体类中愚蠢地声明了一种数据类型错误,现在我意识到它无法与我试图做的事情一起工作。必须具有自动完成功能。但是无论如何,该字段是可为空的,而现在我将其更改为我想要的内容,它将字段设置为“ not null”。
最初:public virtual Byte[] ImageData { get; set; }
更改为:public virtual byte ImageData { get; set; }
现在,我已更改并构建了解决方案,update-database -force
将不起作用并引发以下错误:
Cannot insert the value NULL into column 'ImageData', column does not allow nulls. UPDATE fails. The statement has been terminated.
我是否可以使用数据注释将此字段设置回可为空?
例如:
[DataType(DataType.Upload)]
我在这里浏览了相当长的时间,但似乎找不到我想要的东西。
最佳答案
将属性类型更改为可为空的形式byte?
。
public virtual byte? ImageData { get; set; }
关于c# - 更改可空值和非空值数据类型的数据注释是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12995349/