0

我可以访问Ping.HTMLPing.ASPX,但是当我尝试从我的 MVC (4.0) 项目(部署到同一台服务器,即 F5 的虚假服务器)访问视图时,我得到 404。

这是一个从 MVC 4 模板创建的普通项目,具有非常默认的视图和控制器(无模型)。

关于如何解决的提示?我没主意了...

编辑

我的RouteConfig.cs是这样的

public class RouteConfig
{
  public static void RegisterRoutes(RouteCollection routes)
  {
    routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
    routes.MapRoute(
      name: "Default",
      url: "{controller}/{action}/{id}",
      defaults: new { 
        controller = "Home", action = "Index", id = UrlParameter.Optional }
    );
  }
}

Controllers 文件夹仅包含一个名为 ÄDefault1Controller.cs* 的文件。它只这样做:

public class Default1Controller : Controller
{
  public ActionResult Index()
  {
    return View();
  }

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

编辑

输入的确切 URL(当然,除了服务器名称之外)是:

> http://localhost:49642/Index  
> http://localhost:49642/Index.aspx  
> http://localhost:49642/Home/Index  
> http://localhost:49642/Home/Index.aspx  
> http://localhost:49642/Default/Index  
> http://localhost:49642/Default/Index.aspx
4

1 回答 1

1

根据您提供的信息,这听起来像是一个路由问题。您请求的 URL 没有触发控制器。

编辑

MVC 按约定工作,因此通过命名控制器Default1Controller,匹配的 URL 将以/Default1.

在您给出的示例中,您只能Test()通过导航到 来访问该方法http://localhost:49642/Default1/Test,这将返回通常位于/Views/Default1/Test.aspx(或/Views/Default1/Test.cshtml基于剃刀的视图)的视图。

有关路由表如何映射到控制器和操作的更多信息,请查看ASP.NET 上的路由概述。我应该指出,该链接适用于旧版本的 MVC,但您应该明白这一点。

让我知道我是否可以提供进一步的帮助。

马特

于 2013-10-25T13:50:52.513 回答