找不到ASP.NET MVC应用程序中的控制器路径

时间:2015-02-17 08:26:27

标签: asp.net-mvc

我有一个带有导航菜单的ASP.NET MVC应用程序。该菜单的结构以XML格式定义。

<?xml version="1.0" encoding="utf-8" ?>
<items>
  <item Text="Download" NavigateUrl="Home/Download" />
  <item Text="Delete" NavigateUrl="Home/Delete"  />
  <item Text="Rename" NavigateUrl="Home/Rename"  />
  <item Text="Upload" NavigateUrl="Home/Upload"  />
</items>


  public class HomeController : Controller
    {
        public ActionResult Index()
        {
            // DXCOMMENT: Pass a data model for GridView

            return View(NorthwindDataProvider.GetCustomers());    
        }

        public ActionResult GridViewPartialView() 
        {
            // DXCOMMENT: Pass a data model for GridView in the PartialView method's second parameter
            return PartialView("GridViewPartialView", NorthwindDataProvider.GetCustomers());
        }

        public ActionResult Download()
        {
            return View();
        }

        public ActionResult Upload()
        {
            return View();
        }

        public ActionResult Rename()
        {
            return View();
        }

        public ActionResult Delete()
        {
            return View();
        }
}

我遇到的问题是当我导航到例如到“Home / Delete”然后到“Home / Rename”找不到页面,因为搜索到的路径是“Home / Home / Rename”。但是,如果我删除主页的路径,它也无法正常工作,因为当初点击“/删除”时,找不到页面。

提前致谢!

1 个答案:

答案 0 :(得分:0)

使用斜杠开始您的网址,否则它将相对于当前文件夹。

<items>
  <item Text="Download" NavigateUrl="/Home/Download" />
  <item Text="Delete" NavigateUrl="/Home/Delete"  />
  <item Text="Rename" NavigateUrl="/Home/Rename"  />
  <item Text="Upload" NavigateUrl="/Home/Upload"  />
</items>