请有人通过Dapper和MySQL遇到上述情况。在MySQL(5.1)的所有表中,数据类型为BIT(1)或BIT,Dapper只返回ulong(UInt64)这样的字段。我正在使用MySql.Data.MySqlClient,我对EF没有这样的问题,这正是我想要转换的内容。
感谢您的帮助。
答案 0 :(得分:3)
在MySQL中,类型Boolean
使用MySQL映射到Tinyint(1)
。也许你必须把它强制转换为Boolean
(0 =假/ 1 =真),Convert.toBoolean(UInt64)
可以帮助你(见http://msdn.microsoft.com/en-us/library/33f2zy48.aspx)。
@Christian Droulers:SQLite的行为类似。
答案 1 :(得分:0)
为什么不在sql查询中进行转换?
cast(myField using TINYINT(1)) as myField
不确定这里是否有类型,但这就是我的数据库类型与我的对象不匹配的方式。