如何编写查询以使用会话值检查数据库值

时间:2013-02-01 05:48:32

标签: c# asp.net-mvc-3

任何人都可以帮助我吗?我在变量中使用会话值,如

var user = Session["UserName"]; 

通过这个我将获得登录的员工的用户名。现在我想要指定该员工,所以我写了

var data=from u in db.EmployeeTabs.Where(p=>p.EmpName==user).Select(v=>v.Designation)   

现在可变数据可能包含已登录员工的名称。现在我想要一个条件,基于我想要重定向页面的条件,所以我想要一个if条件,如

if(val(data)=="Receptionist") 

那么它应该显示一个Register.cshtml页面,所以我应该写什么? 在哪里写?控制器中的意思?或者我应该在控制器中创建一些方法?

1 个答案:

答案 0 :(得分:0)

我建议阅读this tutorial对你的代码做一些假设,我想你想要像

这样的东西
public ActionResult Index()
{          
    var user = Session["User"];
    using (var db = new YourEntity())
    {
        var data = from u in db.EmployeeTabs.Where(p => p.EmpName == user).Select(v => v.Designation);
        if (data == null)
        {
           return RedirectToAction("Register");
        }

        Switch(data.First().Designation)
        {
           case "Receptionist":
               return RedirectToAction(Register);
        }
   }

   return View();
}

public public ActionResult Register()
{
    return View();
}