'System.Web.HttpApplication.User' 是 'property' 但用法与 'type' 相同
'System.Web.HttpApplication.User' is a 'property' but is used like a 'type'
我是 MVC3 的新手,我正在尝试实施客户用户和角色身份验证。我可以使用我的自定义数据库验证用户,但现在我想使用相同 table 之外的自定义角色。我按照下面这个 link 中的说明完成了这一步:
MVC Custom Roles and Validation
教程让我将这段代码放入我的 global.asax 文件中。
protected void FormsAuthentication_OnAuthenticate(Object sender, FormsAuthenticationEventArgs e)
{
if (FormsAuthentication.CookiesSupported == true)
{
if (Request.Cookies[FormsAuthentication.FormsCookieName] != null)
{
try
{
//let us take out the username now
string roles = string.Empty;
string username = FormsAuthentication.Decrypt(Request.Cookies[FormsAuthentication.FormsCookieName].Value).Name;
using (RecipeEntities entities = new RecipeEntities())
{
**-->> User user = entities.KeyFobUsers.Single(u => u.username == username);
roles = user.AccessLevel.Trim();
}
//let us extract the roles from our own custom cookie
//Let us set the Pricipal with our user specific details
e.User = new System.Security.Principal.GenericPrincipal(new System.Security.Principal.GenericIdentity(username, "Forms"), roles.Split(';'));
}
catch
{
//something went wrong
}
}
}
}
目前在 MVC 上面的脚本中有 'User' 下划线表示 'System.Web.HttpApplication.User' is a 'property' but is used like a 'type'
我用谷歌搜索并尝试了我在 Stack 上找到的 links,但没有任何东西适合我的问题。我只是想将角色从我的自定义数据库 table 中移到 MVC 的角色中,这样我就可以对某些 windows 使用权限。
有没有人有任何建议或想把我推向正确的方向?
编译器与HttpApplication的User
属性和User
class冲突。您可以使用 var
来避免冲突:
var user = entities.KeyFobUsers.Single(u => u.username == username);
或者用它所在的命名空间完全限定 User
class:
MyNamespace.User user = ...
我是 MVC3 的新手,我正在尝试实施客户用户和角色身份验证。我可以使用我的自定义数据库验证用户,但现在我想使用相同 table 之外的自定义角色。我按照下面这个 link 中的说明完成了这一步:
MVC Custom Roles and Validation
教程让我将这段代码放入我的 global.asax 文件中。
protected void FormsAuthentication_OnAuthenticate(Object sender, FormsAuthenticationEventArgs e)
{
if (FormsAuthentication.CookiesSupported == true)
{
if (Request.Cookies[FormsAuthentication.FormsCookieName] != null)
{
try
{
//let us take out the username now
string roles = string.Empty;
string username = FormsAuthentication.Decrypt(Request.Cookies[FormsAuthentication.FormsCookieName].Value).Name;
using (RecipeEntities entities = new RecipeEntities())
{
**-->> User user = entities.KeyFobUsers.Single(u => u.username == username);
roles = user.AccessLevel.Trim();
}
//let us extract the roles from our own custom cookie
//Let us set the Pricipal with our user specific details
e.User = new System.Security.Principal.GenericPrincipal(new System.Security.Principal.GenericIdentity(username, "Forms"), roles.Split(';'));
}
catch
{
//something went wrong
}
}
}
}
目前在 MVC 上面的脚本中有 'User' 下划线表示 'System.Web.HttpApplication.User' is a 'property' but is used like a 'type'
我用谷歌搜索并尝试了我在 Stack 上找到的 links,但没有任何东西适合我的问题。我只是想将角色从我的自定义数据库 table 中移到 MVC 的角色中,这样我就可以对某些 windows 使用权限。
有没有人有任何建议或想把我推向正确的方向?
编译器与HttpApplication的User
属性和User
class冲突。您可以使用 var
来避免冲突:
var user = entities.KeyFobUsers.Single(u => u.username == username);
或者用它所在的命名空间完全限定 User
class:
MyNamespace.User user = ...