我有一个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
有什么建议吗?
答案 0 :(得分:0)
好的,我通过在项目属性中将plataform首选项设置为x86来解决此问题。