![](/img/trans.png)
[英]Storing DateTime property instead of byte array in SQL table using Code-First MVC5 EF6
[英]EF6 Code-First Nullable Byte Cast Error?
我正在使用我的.NET 4.0项目的Entity Framework 6 Code-First与数据库进行通信。 我正在使用的表中的一列是一个允许NULL值的tinyint。 在我的模型中,我将该列定义为可以为空的字节(byte?)。 我使用LinqPad来测试我的模型。 当我尝试运行Linq语句,我说Fieldname.HasValue时,我收到以下错误:
“从物化'System.Int64'类型到'System.Int16'类型的指定强制转换无效。”
任何人都可以了解发生了什么事吗?
我认为数据库表中列的数据类型是Int64(BIGINT),但您的数据模型有byte?。 您是否需要将基础表列的数据类型更改为TINYINT或将实体数据模型属性类型更改为long?。
经验教训:当您收到“从物化[type1]到[type2]的指定演员表无效”消息时,请检查所有字段,而不仅仅是您要查询的字段。
我的错误是假设错误与具有可空字节值的字段有关。 原来我有另一个字段我定义为“int”,但SQL类型是“bigint”,因此错误。
感谢大家的耐心,帮助和时间。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.