0

我正在建立一个注册页面,我需要做的一件事是检查提供的电子邮件是否已经存在。这是我的代码:

// Check if email already exists in the database
cn.Open();
SqlCommand Command = new SqlCommand("SELECT Email FROM Users WHERE Email = @Email", cn);
Command.Parameters.Add("@Email", SqlDbType.NVarChar).Value = _Email;

SqlDataReader Reader = Command.ExecuteReader(CommandBehavior.CloseConnection);
Reader.Read();
if (Reader.HasRows)
{
    // Email already exists
    Reader.Close();
    Feedback.Text = "That email is already in use, please use another";
}
else
{
    // Doesn't exist, proceed
}

运行此代码时,我得到以下异常,该异常被触发COmmand.ExecuteReader()

System.Data.SqlClient.SqlException: Invalid object name 'Users'.

据我所知,这意味着它找不到用户表。它肯定存在,我刚刚创建它,我可以在服务器资源管理器窗口下看到它:

截屏

此外,在我的连接字符串中,我Initial Catalog=db_74;使用了正确的数据库。

所以,我不知道可能出了什么问题。有任何想法吗?

4

1 回答 1

0

如果您使用的是 SqlExpress,您的连接字符串应该是这样的:

Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\db_74.mdf;Integrated Security=True;User Instance=True
于 2012-11-10T17:23:26.633 回答