创造&从其他控制器验证新用户

时间:2015-05-07 14:18:08

标签: asp.net-mvc asp.net-mvc-5 claims-based-identity

我有一个登录页面,匿名访问者可以在其中填写表单以执行操作。 在控制器端,我们称之为VoteController,我想注册并将用户与行动业务逻辑(投票)一起登录。

我尝试使用以下代码,它似乎有效,但每当用户继续浏览网站时,它会在包含@Html.AntiForgeryToken()的每个页面上出错,似乎声明出现了问题。

var claims = new List<Claim>();
claims.Add(new Claim(ClaimTypes.Name, a.UserName));
claims.Add(new Claim(ClaimTypes.Email, model.Email));

var id = new ClaimsIdentity(claims, Microsoft.AspNet.Identity.DefaultAuthenticationTypes.ApplicationCookie);

var ctx = Request.GetOwinContext();
var authenticationManager = ctx.Authentication;
authenticationManager.SignIn(id);

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

尝试在AntiForgeryConfig.UniqueClaimTypeIdentifier的{​​{1}}方法中设置Application_Start属性,例如:

global.asax.cs