首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Asp.net MVC-5身份突然失效

Asp.net MVC-5身份突然失效
EN

Stack Overflow用户
提问于 2015-04-20 05:26:47
回答 2查看 1.6K关注 0票数 0

我正在用Asp.Net Mvc5开发网络。但今天突然间我无法登录/Using身份/。

以下是我的登录操作:

代码语言:javascript
复制
    [HttpPost]
    [ValidateAntiForgeryToken]
    public ActionResult Login(LoginViewModel input, string returnUrl)
    {
        if (ModelState.IsValid)
        {
            string personalNo = AppStaticConfig.ServiceController.PupilLogin(input.Code, input.Password, ModelState);
            if (!string.IsNullOrEmpty(personalNo))
            {
                PupilProfile pp = AppStaticConfig.ServiceController.PupilDetail(personalNo, AppStaticConfig.SchoolID, ModelState);

                var identity = new ClaimsIdentity(new[] {
                    new Claim(ClaimTypes.Name, pp.pupil.LastName.Substring(0, 1) + "." + pp.pupil.FirstName),
                    new Claim(ClaimTypes.NameIdentifier, personalNo),
                    new Claim("pupilCode", input.Code)
                },
                    DefaultAuthenticationTypes.ApplicationCookie,
                    ClaimTypes.Name, ClaimTypes.Role); 

                    identity.AddClaim(new Claim(ClaimTypes.Role, "guest"));

                    Authentication.SignIn(new AuthenticationProperties{ IsPersistent = true }, identity);

                TempData["pp"] = pp;
                return RedirectToAction("PupilProfile", "Pupil");
            }
        }

        return View(input);
    }

以下是瞳孔控制器成功登录后重定向的PupilProfile操作:

代码语言:javascript
复制
[Authorize]
public class PupilController : Controller
{
    [HttpGet]
    public ActionResult PupilProfile()
    {
        PupilProfile pp = TempData["pp"] != null ? TempData["pp"] as PupilProfile : AppStaticConfig.ServiceController.PupilDetail(User.Identity.GetUserId(), AppStaticConfig.SchoolID, ModelState);
        return View(pp);
    }
}

我认为问题在于User.Identity没有设置在Authentication.SignIn中。

Any1知道有什么问题吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-04-20 06:58:04

问题解决了,是我认为的一些环境问题。

我想要修复的是:

  1. 清除浏览器中的所有缓存cookie。/But没有成功/
  2. 从“导入导出菜单”重置VS2013设置
  3. 重新启动OS /my os:Win8.1/
  4. 重新启动并解决了问题。

希望它对some1有帮助。

票数 2
EN

Stack Overflow用户

发布于 2017-04-05 10:14:09

我只是换了不同的浏览器仅此而已。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29739883

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档