【发布时间】:2015-03-02 14:51:51
【问题描述】:
我的 app.config 文件:
<configuration>
<connectionStrings>
<add name="MegaPixelBizConn"
connectionString="Data Source=PSHERATH-PC;Initial Catalog=MegaPixelBiz;Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
</configuration>
然后我创建了 DBConnection 文件:
class DBConnection
{
#region Database connection method
public SqlConnection Connect()
{
SqlConnection conn = new SqlConnection();
conn.ConnectionString = ConfigurationManager.ConnectionStrings["MegaPixelBizConn"].ToString();
try
{
conn.Open();
}
catch
{
}
return conn;
}
#endregion
}
这是我的登录表单:
SqlCommand cmd;
DataSet ds = new DataSet();
DBConnection db = new DBConnection();
private void btnLogin_Click(object sender, EventArgs e)
{
try
{
if (txtUserName.Text == "" || txtPassword.Text == "")
{
lblError.Visible = true;
lblError.Text = "*Enter UserName and Password";
//MessageBox.Show(" Enter UserName and Password .");
return;
}
else
{
string sql = "SELECT * FROM login_info WHERE userName = '" + txtUserName.Text + "' and password = '" + txtPassword.Text + "'";
cmd = new SqlCommand(sql, db.Connect());
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(ds);
int i = ds.Tables[0].Rows.Count;
if (i == 1)
{
this.Hide();
Home hm = new Home();
hm.Show();
ds.Clear();
}
else
{
lblError.Text = "*Not Registered User or Invalid Name/Password";
//MessageBox.Show("Not Registered User or Invalid Name/Password");
txtPassword.Text = "";
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
但是当我的项目运行时,这个错误来了: “你调用的对象是空的。” 请给我一个解决方案。我使用所有合适的参考资料
【问题讨论】:
-
调试时能否读取连接字符串?
-
你的错误发生在
conn.ConnectionString = ConfigurationManager.ConnectionStrings["MegaPixelBizConn"].ToString();这一行吗? -
是的,错误发生在
conn.ConnectionString = ConfigurationManager.ConnectionStrings["MegaPixelBizConn"].ToString();线上 -
您使用的是什么 DBMS?
-
好吧,我试试我最新的编辑,看看它是否能解决你的问题(我的主电脑坏了,我的笔记本电脑上有 Ubuntu,所以没有打扰测试)。
标签: c#