无法更改httpcontext.current.user中的属性值

时间:2014-06-24 14:51:23

标签: asp.net-mvc asp.net-mvc-4 c#-4.0

无法更改httpcontext.current.user中的属性值。当用户登录时,我获取用户详细信息并存储在HttpContext.Current.User中。以下是我的代码。

FormsAuthenticationTicket authTicket = FormsAuthentication.Decrypt(authCookie.Value);

                 var s = new System.Web.Script.Serialization.JavaScriptSerializer();
                 User obj = s.Deserialize<User>(authTicket.UserData);

                 UserInformation CurrentUser = new UserInformation(obj.UserID);
                 CurrentUser.UserId = obj.UserID;
                 CurrentUser.FirstName = obj.UserFName;
                 CurrentUser.LastName = obj.UserLName;
                 CurrentUser.roles = obj.SecurityGroupName;
                 CurrentUser.DefaultWhse = 14;

                 HttpContext.Current.User = CurrentUser;

我在global.asax中使用过它。

但是现在用户可以随时更改CurrentUser.DefaultWhse值,但是当我更改像下面的值时。

示例:id = 4

public ActionResult ChangeWhse(string id)
        {
            User.DefaultWhse = Convert.ToInt32(id);

            return RedirectToAction("UserWhseMenu");

        }

User.DefaultWhse是4内部方法。但是当它离开时再次分配值14。请指导我。

0 个答案:

没有答案