IDataRecord的OverFlowException

时间:2016-01-11 19:39:39

标签: c# mysql odbc

我有一个x64 WinForms程序可以正常使用MySQL和ODBC连接器。直到一台机器让我改为x86,现在我有了这行代码:

var someValue = data.GetString(3);

并抛出一个OverFlowException。我试着改为:

var someValue = (string)data[3];

但是同样的麻烦。在获取数字时我遇到了更多问题。

我将我的平台切换为“任何CPU”,但没有任何改变。

例外:

  

System.OverflowException: Arithmetic operation resulted in an overflow. at System.Data.Odbc.OdbcDataReader.GetSqlType(Int32 i) at System.Data.Odbc.OdbcDataReader.GetValue(Int32 i) at System.Data.Odbc.DbCache.AccessIndex(Int32 i) at System.Data.Odbc.OdbcDataReader.internalGetString(Int32 i) at System.Data.Odbc.OdbcDataReader.GetString(Int32 i) at MyProject.Clases.Catalogos.Cartt..ctor(IDataRecord data) at c:\Users\Develop\Documents\Visual Studio 2013\Projects\MyProject\Clases\Catalog\Cartt.cs:línea 113

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

好的,我通过在项目属性中将plataform首选项设置为x86来解决此问题。