使用GenericPrincipal实例设置角色

时间:2012-01-03 18:43:50

标签: asp.net-mvc-3 authentication roles

最近我问了一个关于how to use ajax calls to authenticate user in asp.net mvc的问题,我得到了答案。

然后决定使用'角色' GenericPrincipal'的属性类

因此我将代码更改为包含'角色':

HttpContext.User = new System.Security.Principal.
                    GenericPrincipal(new System.Security.Principal.GenericIdentity(login.LoginName),
                     userRole);

在我的site.master视图中,我检查用户是哪种角色 属于,我显示适当的菜单,但我看的时候 ' HttpContext.Current.User.Identity'调试时的值, 我看到m_roles = string [0]和' IsInRole(" Admin")'返回false。

怎么可能修好?

1 个答案:

答案 0 :(得分:0)

尝试设置当前线程原则:

   System.Threading.Thread.CurrentPrincipal = principal;

如下所示: http://social.msdn.microsoft.com/forums/en-US/Vsexpressvcs/thread/5f9735a9-096b-47af-963d-e95130cad6b4