回答

收藏

表格名称附近的C#语法错误

技术问答 技术问答 279 人阅读 | 0 人回复 | 2023-09-12

尝试在C#检查三层项目登录凭证时遇到问题。
. B- I1 P2 a, Q0 T& A: i" X现在,我有个名字User其中包含的表userName和password列。6 U7 ]  y1 B/ t& P2 M4 ]
在我的BusinessLogicLayer获取用户输入并将其传递给中间dataAccessLayer:, c3 D. J) a. i: C7 ~
public string checkCredential(string userName,string password){    string returnMessage = "";    User user = new User(userName,password);    Boolean success = user.checkCredential();     if (!success)                                                                                                                                                                                                                 returnMessage  = "Username and password does not match!";   }    else                                                                                                                                                                                                                 returnMessage = "";   }    return returnMessage;}在我的数据访问层中,我找到了一种检查登录凭证的方法:
9 q) c- O7 V' M% d+ |public Boolean checkCredential(){     Boolean result = false;    using (var connection = new SqlConnection(FFTHDb.connectionString)) // get your connection string from the other class here                                                                                                                                                                                                                 SqlCommand command = new SqlCommand("SELECT userName,password FROM User WHERE userName = '"   userName   "' AND password = '"   password   "'",connection);        connection.Open();;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;using (var dr = command.ExecuteReader())                                                                                                                                                                                                                         if (dr.Read())                                                                                                                                                                                                                                 result = true;                     return result;}我得到了一个单独的类来设置连接字符串:$ O( P9 d6 r  h* o+ `9 w8 J
public static string connectionString = DataAccessLayer.Properties.Settings.Default.DBConnStr;public static SqlDataReader executeReader(string query){    SqlDataReader result = null;    System.Diagnostics.Debug.WriteLine("FFTHDb executeReader: "   query);    SqlConnection connection = new SqlConnection(connectionString);    SqlCommand command = new SqlCommand(query,connection);    connection.Open();     result = command.ExecuteReader();     connection.Close();     return result;}没有编译错误。我仔细检查了数据库中的表名和列。然而,它总是告诉我用户附近有语法错误。我不知道为什么。
/ B% X3 y  Q8 k# y7 H2 i6 {  q提前致谢。
8 ~4 @  _8 x: a8 M) P; X                                                               
/ |! r6 l8 A% s: x! a+ h( K    解决方案:
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则