14

请问有没有人遇到过 Dapper 和 MySQL 的上述情况。在 MySQL (5.1) 中的所有表中,数据类型为 BIT(1) 或 BIT,Dapper 仅返回 ulong (UInt64) 之类的字段。我正在使用 MySql.Data.MySqlClient 并且我对 EF 没有这样的问题,这是我试图转换的。

谢谢你的帮助。

4

2 回答 2

3

在 MySQL 中,类型Boolean映射到Tinyint(1)MySQL。也许您必须将其转换为Boolean(0=false/1=true),Convert.toBoolean(UInt64)可能会对您有所帮助(请参阅 http://msdn.microsoft.com/en-us/library/33f2zy48.aspx)。

@Christian Droulers:SQLite 的行为是相似的。

于 2011-11-25T12:30:53.230 回答
0

为什么不在 sql 查询中进行强制转换?

cast(myField using TINYINT(1)) as myField 

不确定这里的类型,但是当我的数据库类型与我的对象不匹配时,我就是这样做的。

于 2011-12-15T10:14:06.787 回答