我是使用Asp.net MVC5的初学者,我目前在做我的项目。“ExecuteReader:连接属性尚未初始化。”
它引用“var reader = cmd.ExecuteReader();” 这里是我的代码:
public bool IsValid(string username, string password)
{
string conString = "Server= EJ ; Database=OnlineShopDb ; Integrated Security=SSPI";
SqlCommand cmd = new SqlCommand("Select * from dbo.UserTb where [email protected] and [email protected]");
SqlConnection con = new SqlConnection(conString);
cmd.Parameters.AddWithValue("@UserName", SqlDbType.VarChar).Value = username;
cmd.Parameters.AddWithValue("@PassWord", SqlDbType.VarChar).Value = password;
con.Open();
var reader = cmd.ExecuteReader();
if (reader.HasRows)
{
reader.Dispose();
cmd.Dispose();
return true;
}
else
{
reader.Dispose();
cmd.Dispose();
return false;
}
}
...? – maccettura
您没有正确处理您的连接。如果有例外情况呢?现在你正在泄漏资源。了解[IDisposable](https://msdn.microsoft.com/en-us/library/system.idisposable(v = vs.110).aspx)模式。 – mason
我想知道未被初始化的Connection属性是什么?如果只有大量关于SqlCommand类的文档可用。可能通过互联网访问某处。哇,那太棒了。 – Will