我正在开发使用EF来处理数据库的ASP.NET MVC应用程序。我需要更改一个具有StringLength(1000)
属性的字符串属性,并将其映射到数据库中的nvarchar(1000)
列。
由于最近的要求,我更新了数据库以使用nvarchar(max)
,并从模型类中删除了StringLength(1000)
属性。
问题是。每次我想插入具有此属性且长度大于1000的新实体时,我会收到验证错误,说它只能是1000个字符。当它更低时,一切都按预期工作。
该字段必须是字符串或数组类型,最大长度为 '1000'。
我不知道这个错误来自哪里。没有触发器或存储过程。我也尝试使用属性MaxLength
或StringLenght(int.maxInt)
,但收到错误。 Fluent API也没有其他配置..
解决方案:因此,由于某种原因,内部使用的项目中的同一实体还有另一个模型类。它的属性完全没有单一属性。将MaxLength添加到该单个属性后,它可以正常工作。
答案 0 :(得分:1)