用户登录MVC后如何显示用户数据

时间:2018-11-15 12:27:07

标签: c# asp.net-mvc

当他选择查看个人资料时,我需要显示用户信息。我如何才能做到这一点,因为它是mvc的新手。帮助链接或说明会很有帮助。谢谢

这是我的登录操作:

public ActionResult Authorize(The_Pizzatorium.Models.tblUser userModel)
    {
        using (The_PizzatoriumEntities1 db = new The_PizzatoriumEntities1())
        {
            var userDetails = db.tblUsers.Where(x => x.dUSerName == userModel.dUSerName && x.dPassword == userModel.dPassword).FirstOrDefault();
            if (userDetails == null)
            {
                userModel.LoginErrorMessage = "Wrong username or password.";
                return View("Index", userModel);
            }


            else
            {
                Session["UserID"] = userDetails.dID;
                Session["userName"] = userDetails.dUSerName;
                return RedirectToAction("Index", "Home");
            }
        }
    }

我需要如何执行“查看配置文件操作”以显示已登录的“用户详细信息”?

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

2 个答案:

答案 0 :(得分:0)

当用户来查看个人资料操作检查使用会话

    public ActionResult ViewProfile()
        { 
    if(Session["UserID"]!=null)
    {
//check user uid datatype 
//then store in variable
int useesionid=COnvert.toint32(Session["UserID"].tosting())

    var userDetails = db.tblUsers.Where(x => x.uid==useesionid).ToList();
    ///here your code
            return View( userDetails );
        }

答案 1 :(得分:0)

检查以下代码,以获取用户详细信息(如果以其他方式重定向到登录页面登录)。

public ActionResult ViewProfile()
{
    if(Session["UserID"] != null)
    {
        using (The_PizzatoriumEntities1 db = new The_PizzatoriumEntities1())
        {
            int userId = Convert.ToInt32(Session["UserID"].ToString());

            var userDetails = db.tblUsers.Where(x => x.dID == userId).FirstOrDefault();
            if (userDetails != null)
            {
                return View(userDetails);
            }
        }
    }

    return RedirectToAction("Login", "Account"); // Redirect to your login page
}