mvc ActionResult没有返回到另一个View

时间:2018-01-13 15:37:45

标签: asp.net-mvc

这里我有两种方法。

Login方法

public ActionResult Login(LoginCrediential ObjCrendentials)
{
    if (x == true)
        return RedirectToAction("RoutingAction");
    else
        return View("Index");
}

RoutingAction方法

public ActionResult RoutingAction()
{
    if (User.IsInRole("Admin"))
        return View("Admin/AdminHome/index");
    else if (User.IsInRole("Hr"))
        return View();
    else
        return View();
}

if方法中的true条件为Login时,它会导航到RoutingAction(),但会抛出以下错误

  

未找到Admin / AdminHome / index或其主数据或视图引擎不支持搜索的位置

在网址中显示为http://localhost:3013/Home/RoutingAction

请帮我解决这个问题。

1 个答案:

答案 0 :(得分:1)

好吧,它只会搜索控制器的View文件夹(Home)和共享视图。但是,您应该能够指定视图的完整路径:

return View("~/Areas/Admin/Views/AdminHome/Index.cshtml");

但是,如果您希望网址反映此位置,那么您可能需要拥有一个AdminHome控制器并重定向到其索引操作。