【问题标题】:ASP.NET MVC4 "resource not found" when adding new view添加新视图时 ASP.NET MVC4“找不到资源”
【发布时间】:2013-10-15 11:42:29
【问题描述】:

我正在使用 Visual Studio 2010 将生成的默认“互联网应用程序”来测试 MVC4。

我在文件夹中添加了一个新视图:

\Views\NewFolder\NewPage.cshtml

..并在我的“_Layout.cshtml”文件中附加了指向这个新视图的链接。

<li>@Html.ActionLink("Home", "Index", "Home")</li>
<li>@Html.ActionLink("About", "About", "Home")</li>
<li>@Html.ActionLink("Contact", "Contact", "Home")</li>
<li>@Html.ActionLink("NewPage", "NewPage", "NewFolder")</li>

..虽然前三个链接是自动生成的,工作正常,但最后一个链接给我一个“找不到资源”错误。

【问题讨论】:

  • 这个视图有一个合适的NewFolder Controller,不是吗?

标签: c# asp.net asp.net-mvc asp.net-mvc-4 razor


【解决方案1】:

你需要有相应的Controller和Action。

对于以上三个,它们都有一个 HomeController,带有 Index、About 和 Contact 操作。 它们在 View/Home 文件夹中有相应的视图,采用文件夹的 HomeController 名称的约定。

正如 Avinash 所说,您需要 NewFolderController 还需要一个 NewPage 操作,如果您返回一个未命名的视图,这将默认为您的 NewPage 视图。

这是让它工作所需的代码:

  public class NewFolderController : Controller
   {
      public ActionResult NewPage() {
      return View();
      }

    }

你最好阅读这里的教程并学习约定:

http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/intro-to-aspnet-mvc-4

【讨论】:

    【解决方案2】:

    首先你需要为视图创建控制器然后创建视图。

    否则你可以使用控制器的现有视图。

    创建一个Newcontroller然后创建Action方法NewPage。

    右键单击方法内部,然后单击添加视图链接。

    然后在“Views”文件夹中创建一个名为“New”的文件夹,然后在新文件夹中添加名称为 NewPage 的视图(.cshtml)。

    【讨论】:

      【解决方案3】:

      您应该有一个名为..NewFolderController 的控制器。 ASP.net MVC 严格依赖命名约定。

      希望对你有帮助..

      【讨论】:

        【解决方案4】:

        1) 首先需要为 View 创建 Controller,然后再创建 View。

        2) 右键单击​​方法内部,然后单击添加视图链接。

        第一步

        enter image description here

        第 2 步

        enter image description here

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2023-03-22
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-06-21
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多