我有一个具有下表的数据库:
我正在尝试获取当前用户名的角色,以便可以将该人重定向到正确的页面。我使用if子句(acc.u_role == 1)进行了尝试,但不幸的是它无法正常工作。
public ActionResult Verify(User acc)
{
connectionString();
con.Open();
com.Connection = con;
com.CommandText = "select * from Users where u_username = '"+acc.u_username+"' and u_password ='"+acc.u_password+"'";
dr = com.ExecuteReader();
if (dr.Read())
{
if (acc.u_role == 1) {
con.Close();
return View("AdminHome");
}
else
{
con.Close();
return View("UserHome");
}
}
else
{
con.Close();
return View("Error");
}
}
答案 0 :(得分:0)
您在哪里设置acc.u_role?
您似乎正在读取数据,然后没有使用它。 dr [5]应该包含数据库中的角色
dr = com.ExecuteReader();
if (dr.Read())
{
if (dr[5] == 1) {
con.Close();
return View("AdminHome");
}
答案 1 :(得分:0)
我已经找到了答案的解决方案,这里是:
if (dr.Read())
{
if (Convert.ToInt32(dr["u_role"]) == 1) {
con.Close();
return View("AdminHome");
}
else
{
con.Close();
return View("UserHome");
}
}
else
{
con.Close();
return View("Error");
}