【发布时间】:2015-04-02 08:55:35
【问题描述】:
我必须支持一个非常古老的交通管理系统,该系统是在 Winforms、Microsoft Development Environment 2003 中开发的,带有 .Net framework 1.1,使用 MySQL 和 ODBC。应用程序在登录时打开 3 个连接,并假定这些连接保持打开状态,并将它们传递给各种表单和类库。
一切似乎都很好,但数据库连接随机关闭。调试这是一场噩梦,因为我必须使用虚拟机并且不知道如何使用旧版本的 Visual Studio,但即便如此,所有调试或日志文件告诉我的是连接已关闭。
我想知道我是否在浪费时间尝试调试这个烂摊子。我找错地方了吗?也许错误出在 MySQL 上,我应该去那里看看。我正在努力弄清楚如何解决这个问题。任何建议都会有所帮助。
这里是日志文件的相关部分,它告诉我什么我不知道:
System.InvalidOperationException: The connection is dead.
at System.Data.Odbc.OdbcConnection.ConnectionIsAlive(Exception innerException)
at System.Data.Odbc.OdbcConnection.get_State()
at System.Data.Odbc.OdbcConnection.get_IsOpen()
at System.Data.Odbc.OdbcConnection.GetDriverOdbcVersion()
at System.Data.Odbc.OdbcConnection.get_OdbcMajorVersion()
at System.Data.Odbc.OdbcConnection.get_IsV3Driver()
at System.Data.Odbc.OdbcCommand.ExecuteReaderObject(CommandBehavior behavior, String method)
at System.Data.Odbc.OdbcCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.Odbc.OdbcCommand.ExecuteReader()
at DatabaseConnection.DBConnection.ExecuteQuery(String query, DBTransaction outterTransaction)
at DatabaseConnection.DBConnection.ExecuteQuery(String query)
at EnigmaForms.FormMain.CheckMySQLConnection() in c:\development\nutraffic\bts client\enigmaforms\forms\formmain.cs:line 1403
【问题讨论】: