.NET Framework 4.5 - EF从MySQL数据库中排除“ufloat”列

时间:2014-11-04 18:56:01

标签: c# mysql .net entity-framework

我正在尝试编写程序,通过SSH隧道远程访问来帮助自己管理服务器上的一些数据。

服务器MySQL版本:5.1.73-cll

我在PC上安装了Visual Studio 2012,.NET Framework 4.5,最新的MySQL Connector(6.9.4)和MySQL for VS(1.2.3)。连接数据库工作正常,我用“Generate from database”向导创建了.edmx文件。我做了一些关联并开始构建我的程序。但后来我意识到有些专栏已经消失了。试图从数据库更新模型,然后在错误日志中看到消息(而不是错误):

Message 30  The data type 'ufloat' is currently not supported for the target .NET Framework version; the column 'spa' in table 'game_data.monster_sold' was excluded.

对于每个ufloat和udouble都有这样的消息。我试图寻找解决方案,但看起来这个消息没有匹配。没有找到关于它的单一主题,但也许我只是不知道在哪里看(或犯了一些新手的错误)。 我有点使用MySQL Connector和EF。

所以这是我的问题 - 有谁知道我做错了什么以及如何修复它(在任何一方,客户端或服务器上)?

我可以粘贴EF文件的内容,如果它是必要的。感谢您的回复!

1 个答案:

答案 0 :(得分:0)

EF仅支持特定数据类型。该消息向您发出警告,它将无法将这些不受支持的列映射到您的对象。

如果无法更改列的基础数据类型,请考虑创建一个只是物理表的外观的视图,但类型会将不受支持的列强制转换为EF支持的更常见的数据类型。然后简单地将EF配置为映射/读取/从View而不是Table。应该解决你的问题。