UserManager.FindAsync不起作用

时间:2017-09-27 00:02:16

标签: asp.net azure asp.net-identity

我的代码在我自己的机器和另一台VM上工作得很好。现在,我已将其部署在Azure VM上(不是通过发布,而是通过简单地复制和创建虚拟目录)。现在当我尝试登录时

public async Task<ActionResult> Login(LoginViewModel model, string returnUrl)
    {
        if (ModelState.IsValid)
        {
            try
            {
                System.Web.HttpContext.Current.Session["SchoolCode"] = model.SchoolCode;
                logger.Debug("assigning school code [" + model.SchoolCode + "] to session, password: " + model.Password);

                var user = await UserManager.FindAsync(model.Username, model.Password);

                logger.Debug("is school code valid: ");

                if (user != null && isSchoolCodeValid(model.SchoolCode))
                {
                    await SignInAsync(user, model.RememberMe);
                    return RedirectToLocal(returnUrl);
                }
                else if(user == null)
                {
                    ModelState.AddModelError("", "Invalid username or password.");
                }
                else
                {
                    ModelState.AddModelError("", "Invalid School Code.");
                }
            }
            catch (Exception e) {
                logger.Error(e.Message);
            }

        }

        // If we got this far, something failed, redisplay form
        return View(model);
    }

我的日志文件只显示第一个日志,然后没有任何反应

  

2017-09-27 09:41:56,915 [16]调试 - 将学校代码[sc002]分配给   会话

我也在iis上使用了另一个端口(93),因为它给了我一个错误,即两个站点不能同时在同一个端口上运行enter image description here

1 个答案:

答案 0 :(得分:0)

所以,我的问题与我的想法完全不同。

首先,我增加了日志记录但是我的iis选择了缓存版本,这就是我无法查看日志的原因。在我能够看到日志中的错误后,它说

  

字符串未被识别为有效的布尔值

由于数据库 aspnetusers 表,我花了一段时间才意识到这个错误。我将 EmailConfirmed 0 更改为错误,这解决了问题!