我试图关闭我的应用程序vb.net时出错

时间:2015-08-23 05:49:45

标签: mysql vb.net

我编写了一个vb.netmysql的小程序。它工作正常。但在使用“结束”命令关闭我的应用程序时。我收到了这个错误。

  

“System.NullReferenceException未处理
  HResult = -2147467261 enter code here消息=对象引用不是   设置为对象的实例。 Source = MySql.Data StackTrace:          at MySql.Data.MySqlClient.NativeDriver.FetchDataRow(Int32 statementId,Int32 columns)          at MySql.Data.MySqlClient.Driver.FetchDataRow(Int32 statementId,Int32 columns)          at MySql.Data.MySqlClient.Driver.SkipDataRow()          at MySql.Data.MySqlClient.ResultSet.Close()          at MySql.Data.MySqlClient.MySqlDataReader.NextResult()          at MySql.Data.MySqlClient.MySqlDataReader.Close()          at MySql.Data.MySqlClient.MySqlConnection.Close()          at MySql.Data.MySqlClient.MySqlConnection.Dispose(布尔处理)          在System.ComponentModel.Component.Finalize()InnerException:“

仅在关闭我的应用程序时出现。请帮我。谢谢。

2 个答案:

答案 0 :(得分:0)

如果你把一些代码放在这里,回答就不那么难了。 在关闭程序之前,您可能没有关闭MySql Reader或Connection。

答案 1 :(得分:0)

您正在尝试使用null(或VB.NET中的Nothing)。这意味着您要么将其设置为null,要么根本不将其设置为任何内容。

这意味着什么

抛出NullReferenceException的运行时总是意味着同样的事情:您正在尝试使用引用。引用未初始化(或者已初始化,但不再初始化)。

这意味着引用为null,并且您无法通过空引用访问成员。最简单的情况:

string name = null;
name.ToUpper();

string name = null;
name.ToLower();

这些将在第二行抛出NullReferenceException,因为你不能在指向null的字符串引用上调用实例方法ToUpper()或ToLower()。