【问题标题】:MVC adding View gets 404 not foundMVC 添加视图得到 404 未找到
【发布时间】:2015-06-11 20:30:04
【问题描述】:

我想复制 DETAILS 来制作第二个详细信息页面。我点击 Views 下的文件夹,添加..new item.. 将 .cshtml 放入搜索中,然后选择 MVC View Page (Razor),将其命名为 R3,添加。

它以基本的 html 框架打开并显示 @{ layout=null} ?好的,我打开详细信息,全选,复制并粘贴到 R3 中。节省。跑。错误:

“/”应用程序中的服务器错误。

找不到资源。

描述:HTTP 404。您正在寻找的资源(或其之一 依赖项)可能已被删除,名称已更改,或者是 暂时不可用。请查看以下 URL 并制作 确保拼写正确。

好的

HTTP 错误 400.0 - 错误请求错误请求

put /Details/1 有时它会起作用。

这是 MVC 的限制吗?不能直接显示详情页吗?

【问题讨论】:

  • 您是否在控制器中为您的新视图添加了路由?

标签: c# asp.net-mvc razor


【解决方案1】:

记住这是 MVC。请求到达控制器,在那里执行一个动作,结果显示在一个视图中。您创建了一个新的视图文件,但控制器中没有引用。

默认路由机制会查找控制器,然后在控制器中执行操作以完成请求。您应该创建一个名为 R3 的操作,其代码与操作详细信息相同,然后重试。

【讨论】:

    【解决方案2】:

    听起来您没有负责填充R3 显示所需的模型的操作。

    如果您复制 Details 操作并将其重命名为 R3,它应该可以工作。

    【讨论】:

      【解决方案3】:

      jfeston 帮了我一些忙。但是,我的控制器中有该方法,但我将 [HttpPost] 作为方法标头的一部分。我需要使用 [HttpPost] 创建另一个方法来接受来自新视图的请求。

      所以...

      [AllowAnonymous] // this is a login page; there is no auth yet
      public ActionResult Login()
      {
          // do stuff here
      }
      
      [AllowAnonymous]  
      [HttpPost]  // this accepts the request from the view
      public ActionResult Login(User user, string returnURL)
      {
          // do stuff here
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-08-06
        • 1970-01-01
        • 2017-09-04
        • 1970-01-01
        • 2021-05-17
        • 1970-01-01
        • 2015-01-03
        • 2011-02-07
        相关资源
        最近更新 更多