![](/img/trans.png)
[英]The property 'x' on 'tblX' could not be set to a 'null' value. You must set this property to a non-null value of type 'Int16'
[英]Property could not be set to a byte value you must set the property to a non null of type int32
数据库在SQL Server 2005中,我所讨论的列的数据类型定义为tinyint
(我无法更改此类型)
我创建了一个类型为Int32
的模型。 在read语句系统中抛出此错误。
无法将属性设置为字节值,必须将该属性设置为int32类型的非null
我遇到了其他类型的类似问题,然后在检查CLR映射后我更正了它们。 现在我只在tinyint
和smallint
情况下面临这个问题。
从SQL Server文档中可以看到TINYINT
是一个1字节的值,它作为byte
类型映射到.Net。 SMALLINT
是2个字节,在.Net中成为Int16
。
因此,您需要更改模型以使用正确的类型。
只需从复杂实体更改属性数据类型即可。 在你的情况下,将属性从int32更改为byte。
至少它对我有用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.