我真的迷失了如何使用 HttpContext.User。我到处都读到它对 FormAutherication 非常有用,但我只是看不到它是如何工作的。如果我做这样的事情:
ControllerContext.HttpContext.User = new GenericPrincipal(GetUser(username, password), roles);
ControllerContext.HttpContext.User 包含什么?以及如何以这种方式访问有关用户的信息?
我认为我有这样的动作:
public User GetUser(string username, string password)
{
try
{
var user = (from u in dm.Users
join r in dm.Roles
on u.Role_ID_FK equals r.RoleID
where u.Username.Equals(username) && u.Password.Equals(password)
select u).Single();
return user;
}
catch (Exception e)
{
return null;
}
}
然后,如果我想要视图中的用户信息,例如用户名或角色,我可以在视图中调用 ControllerContext.HttpContext.User.Username。但这是不同的看待它的错误方式。
那么你们能给我一个正确的方向或发布一个链接到一个可以的网站吗?