我正在测试我作为示例尝试的代码,但我收到错误
对象引用未设置为对象的实例
我确实研究了此错误的含义,我发现当对象引用 NULL 时会发生此错误。
错误在此行上生成
string conString = ConfigurationManager.ConnectionStrings["ConString"].ConnectionString;
唯一的问题是我不知道 NULL 是如何生成的,因此无法修复。
我该如何解决这个问题?
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
string query = "select CountryId, CountryName from Countries";
BindDropDownList(ddlCountries, query, "CountryName", "CountryId", "Select Country");
ddlStates.Enabled = false;
ddlCities.Enabled = false;
ddlStates.Items.Insert(0, new ListItem("Select State", "0"));
ddlCities.Items.Insert(0, new ListItem("Select City", "0"));
}
}
private void BindDropDownList(DropDownList ddl, string query, string text, string value, string defaultText)
{
string conString = ConfigurationManager.ConnectionStrings["ConString"].ConnectionString;
SqlCommand cmd = new SqlCommand(query);
using (SqlConnection con = new SqlConnection(conString))
{
using (SqlDataAdapter sda = new SqlDataAdapter())
{
cmd.Connection = con;
con.Open();
ddl.DataSource = cmd.ExecuteReader();
ddl.DataTextField = text;
ddl.DataValueField = value;
ddl.DataBind();
con.Close();
}
}
ddl.Items.Insert(0, new ListItem(defaultText, "0"));
}
您的项目中有一个名为 web.config 的文件。"conString"引用了web.config中的确切连接,有关详细信息,请查看以下文档中的示例。他们使用Northwind而不是conString。如果 ConString 不存在,您将获得一个空引用,即 C#,表示我找不到该连接字符串,无法继续
https://msdn.microsoft.com/en-us/library/ms178411.aspx