2013-05-14 38 views
0

请接受我对我的问题的可能简单性的道歉,但我是MVC 3的新手,并尝试通过做法来学习。我在应用程序中创建了一个名为Gap的新视图,但无法弄清楚如何从顶层菜单中引用此页面。它一直导航到/ Home/Gap,这是行不通的。MVC 3菜单导航到/间隙不是/主页/间隙

   <ul id="menu"> 
        <li>@Html.ActionLink("Home", "Index", "Home")</li> 
        <li>@Html.ActionLink("Gap", "Gap")</li> 
        <li>@Html.ActionLink("About", "About", "Home")</li> 
       </ul> 
+0

纠正我,如果我错了。您有一个名为Home的单控制器和三个操作方法Index,Gap和About。对 ? – 2013-05-14 16:29:39

+0

嗨Emre,我有3个控制器,帐户,差距和家庭。然后我有4个视图,我想参考的视图不在/ Home视图中,它在Gap文件夹内是分开的,所以我希望引用的地址是portnumber/Gap。 Not/Home/Gap作为应用程序正在尝试执行的操作。 – Chri3 2013-05-15 09:13:51

回答

1

假设你说这是行不通的,你需要创建一个动作,将您的视图退回到用户收到HTTP 404错误。

<ul id="menu"> 
    <li>@Html.ActionLink("Home", "Index", "Home")</li> 
    <li>@Html.ActionLink("Gap", "Gap", "Home")</li> 
    <li>@Html.ActionLink("About", "About", "Home")</li> 
</ul> 

您需要为每个视图获取操作。

namespace Management.Controllers 
{ 
    public class HomeController: Controller 
    {  
      // 
      // GET: /Home/ 

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

      // 
      // GET: /Home/About 

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

      // 
      // GET: /Home/Gap 

      public ActionResult Gap() 
      { 
       return View("~/Views/_portnumnber_/Gap.cshtml"); 
      } 
    } 
} 

没有操作方法,你不能访问你的视图,这是MVC的工作原理。

我会建议阅读教程here。这是一个开始的好地方。

+0

嗨emre,感谢您的评论,不幸的是,已创建的视图文件夹位于地址_portnumnber_/Gap,而不是/ Home/Gap。有什么方法可以从菜单中获得该地址吗? – Chri3 2013-05-15 08:33:24

+0

@ Chri3更新了我的答案。 – 2013-05-15 12:21:02