如何解决RedirectToaction 使用 Umbraco v8 表面控制器失败
我进行了大量搜索,但不明白为什么 RedirectToAction() 路由在我的 umbraco 项目中不起作用。
我知道 CMS 有自己的路由,这里有很多信息https://our.umbraco.com/documentation/reference/routing/custom-controllers,但没有提供我需要的信息。
我的计划是在 RedirectToAction("action","controllerName"); 的帮助下将一个对象传递给另一个控制器。但每当它被调用时,我都会得到以下
Exception: InvalidOperationException: No route in the route table matches the supplied values.
控制器:
public class AuthenticationController : SurfaceController
{
[...]
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<ActionResult> Login(LoginViewModel loginViewModel)
{
bool success = false;
string ticket;
try
{
var response = await _authenticationService.LoginUserAndGetTicketAsync(new AuthorizeCurrentUserInputModel()
{
ndsUserName = loginViewModel.Username,ndsUserPasswd = loginViewModel.Password
});
success = response.Item1;
ticket = response.Item2;
} catch (Exception e)
{
this.ModelState.AddModelError(String.Empty,@"Något gick fel.");
return View("Login",loginViewModel);
}
if (success)
{
FormsAuthentication.SetAuthCookie(loginViewModel.Username,true);
if (!Request.RawUrl.Contains("/mina-sidor/"))
{
return Redirect("/");
}
return RedirectToAction("Index","MinaSidor"); <--- returns No route registred
}
else
{
this.ModelState.AddModelError(String.Empty,@"Användarnamn eller lösenord är fel.");
}
return View("Login",loginViewModel);
}
[HttpGet]
public void Logout()
{
FormsAuthentication.SignOut();
Response.Redirect(@"/",true);
}
}
}
MinaSidorController:
public class MinaSidorController : RenderMvcController
{
public ActionResult Index(ContentModel model)
{
return View();
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。