如何在ASP.NET MVC应用程序中设置调试的启动页面?

Ant*_*nte 126 asp.net-mvc

如何在应用程序根目录下开始调试应用程序?例如:http:// localhost:49742 /

我总是得到一个不存在的页面,例如: http:// localhost:49742/Views/Home/About.aspx

请注意,可以从http:// localhost:49742/Views/Home/About开始

Mar*_*ann 207

转到项目的属性并设置起始页属性.

  1. 转到项目的属性
  2. 转到Web选项卡
  3. 选择" 特定页面"单选按钮
  4. 在" 特定页面"文本框中键入所需的URL

  • +1确保在步骤4中**键入**.使用[...]按钮选择将创建虚假URL:D (21认同)
  • 如果您只是在VS.NET 2010中测试并使用默认的MVC项目模板,只需*清除*起始页面的任何值,然后调试您的项目.这将带您进入主要的"欢迎使用ASP.NET MVC!" 页. (10认同)
  • 除了上述步骤之外,您还需要确保已正确选择启动PROJECT(如果您有多个项目,则不足以设置默认页面).在解决方案资源管理器中右键单击"项目",然后将其设置为"启动"项目.然后,项目名称将在解决方案树中以粗体显示. (3认同)
  • @ Mark-在步骤4中,您可以将文本框留空,并确保选中"特定页面"单选按钮,它将在应用程序根目录开始调试. (3认同)

1c1*_*cle 22

虽然您可以在MVC项目中拥有默认页面,但默认视图的更常规实现是使用默认控制器,通过"RegisterRoutes(...)"方法在global.asax中实现.例如,如果您希望Public\Home控制器成为您的默认路由/视图,则代码将为:

    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapRoute(
            "Default", // Route name
            "{controller}/{action}/{id}", // URL with parameters
            new { controller = "Public", action = "Home", id = UrlParameter.Optional } // Parameter defaults
        );

    }
Run Code Online (Sandbox Code Playgroud)

要使其正常运行,您需要在项目中设置一个Start Page.


Gre*_*Gum 10

这适用于我在MVC的特定页面下:

/Home/Index
Run Code Online (Sandbox Code Playgroud)

更新:目前,我只是在"特定页面"文本框中使用正斜杠,它将我带到路由中定义的主页:

/
Run Code Online (Sandbox Code Playgroud)


cih*_*a87 7

从项目属性中选择特定页面并不能解决我的问题.

在MVC 4中打开App_Start/RouteConfig.cs

例如,如果要将启动页面更改为" 登录":

routes.MapRoute(
        "Default", // Route name
        "",        // URL with parameters
        new { controller = "Account", action = "Login"}  // Parameter defaults
    );
Run Code Online (Sandbox Code Playgroud)