如何修复对象引用不设置为对象的实例MySql连接问题
本文关键字:实例 MySql 连接 问题 对象 何修复 对象引用 设置 | 更新日期: 2023-09-27 18:04:32
我正在创建一个使用mysql作为数据库的应用程序,但是,当我运行该程序时,我一直得到这个错误:
"对象引用未设置为对象的实例。
在private class registerUser()
的第29行,它以String connString =....
开始,问题是我如何解决它?
private void registerUser()
{
String connString = System.Configuration.ConfigurationManager.ConnectionStrings["SportsDBConnString"].ToString();
conn = new MySql.Data.MySqlClient.MySqlConnection(connString);
conn.Open();
queryStr = "";
queryStr = "INSERT INTO sportsdbmlb.userregistration (firstname, middlename, lastname, email, username, password )" +
"VALUES('"+firstnameTextBox.Text + "','"+ middlenameTextBox.Text +"','" + lastnameTextBox.Text + "','" + emailTextBox.Text +
"','" + usernameTextBox.Text + "','" + passwordTextBox.Text + "')";
cmd = new MySql.Data.MySqlClient.MySqlCommand(queryStr, conn);
cmd.ExecuteReader();
conn.Close();
}
我想你在App.config或Web.config中没有connectionString。
如果你想解决你的问题,你至少应该做1:
- 添加配置
- 您还可以在设置中添加空检查。在这种情况下,如果它来自你的App.config/Web。如果你现在添加它,它可能不会再丢失了。
在App.config/Web中添加配置。根据您是构建控制台应用程序还是web应用程序来配置:
<?xml version='1.0' encoding='utf-8'?>
<configuration>
<connectionStrings>
<add name="SportsDBConnString" providerName="System.Data.YourProviderName"
connectionString="Valid Connection String;" />
</connectionStrings>
</configuration>
添加空检查:
if (System.Configuration.ConfigurationManager.ConnectionStrings["SportsDBConnString"] != null) {
String connString = System.Configuration.ConfigurationManager.ConnectionStrings["SportsDBConnString"].ConnectionString;
//Do other logic here or move connString declaration outside this if
}
else {
throw new Exception("Missing ConnectionString SportsDBConnString in App.config/Web.Config");
}
使用ConnectionString
属性
String connString = System.Configuration
.ConfigurationManager
.ConnectionStrings["SportsDBConnString"]
.ConnectionString;