在MVC中,编写项目时,会写入登录方案,登录屏幕和注册表以及所有内容。登录后在mvc5中重定向
我创建了管理页面,但是如果我还没有创建cookie,在进入页面之前,请向我发送登录页面。我想在登录后执行此操作。登录后,我不知道如何重定向到管理页面。
您有代码本身在编写项目时编写viewbag.retutnurl,但我确实不知道控制器是什么。
现在我不确定价值来自哪里。
如果有人知道确切和完成,请告知。
在MVC中,编写项目时,会写入登录方案,登录屏幕和注册表以及所有内容。登录后在mvc5中重定向
我创建了管理页面,但是如果我还没有创建cookie,在进入页面之前,请向我发送登录页面。我想在登录后执行此操作。登录后,我不知道如何重定向到管理页面。
您有代码本身在编写项目时编写viewbag.retutnurl,但我确实不知道控制器是什么。
现在我不确定价值来自哪里。
如果有人知道确切和完成,请告知。
在默认生成的方法改变第一case
,当登录成功后,其执行,并在这里添加您自定义重定向这样的:
switch (result)
{
case SignInStatus.Success:
return RedirectToAction("Index", "Admin", null); // new code
case SignInStatus.LockedOut:
return View("Lockout");
case SignInStatus.RequiresVerification:
return RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = false });
case SignInStatus.Failure:
default:
// If the user does not have an account, then prompt the user to create an account
ViewBag.ReturnUrl = returnUrl;
ViewBag.LoginProvider = loginInfo.Login.LoginProvider;
return View("ExternalLoginConfirmation", new ExternalLoginConfirmationViewModel { Email = loginInfo.Email });
}
而且在你的管理类,你应该把[Authorize]
数据注释
//admin controller
[Authorize]
public ActionResult Index()
{
return View();
}
您可以尝试以下两种方法中的任何一种来处理它。
public ActionResult Index() {
return RedirectToAction("AdminAction");
//Or you can try this
return RedirectToAction("whateverAction", "whateverController");
}
在mvc中,当您创建项目时,它会生成所有登录方案,甚至生成数据库。它将自己设置一个重定向登录到主页和几个returnUrl。它不知道它们在哪里。 现在我想将该值从主页更改为管理页面 我不想更改自己写的内容,因为它不是Login ActionResult。这是任务
您是使用生成的身份验证还是您自己的身份验证? – Nick
我使用生成的身份验证 – hamed