我正在一个简单的家庭网站上使用一个用户名/密码组合。我不希望用户注册等等。但是,我相信我已经支持自己进入角落。我修改了帐户控制器以查找用户名" x"和密码" y"并返回成功。它做得很好。 returnUrl具有正确的文件夹(" / movie"在这种情况下)。但它只是在加载时保留在登录页面上的网址:
然后它进入错误页面,在地址栏中显示相同的URL。
这是我的登录功能:
[HttpPost]
[AllowAnonymous]
[ValidateAntiForgeryToken]
public async Task<ActionResult> Login(LoginViewModel model, string returnUrl)
{
if (!ModelState.IsValid)
{
return View(model);
}
// This doesn't count login failures towards account lockout
// To enable password failures to trigger account lockout, change to shouldLockout: true
var result = await SignInManager.PasswordSignInAsync(model.UserName, "", model.RememberMe, shouldLockout: false);
if (model.Password == "y" && model.UserName == "x")
{
result = SignInStatus.Success;
}
switch (result)
{
case SignInStatus.Success:
return RedirectToLocal(returnUrl);
case SignInStatus.LockedOut:
return View("Lockout");
default:
ModelState.AddModelError("", "Invalid login attempt.");
return View(model);
}
}
它确实下降到了成功&#34;声明,重定向到本地:
private ActionResult RedirectToLocal(string returnUrl)
{
if (Url.IsLocalUrl(returnUrl))
{
return Redirect(returnUrl);
}
return RedirectToAction("Index", "Home");
}
进入重定向(&#34; /电影&#34;)
也许如果有办法在本地商店制作用户名/密码......我不知道
附加:我在控制器类上放了一个断点并且它命中了它,但是从不进入Index()方法