如何开始在应用程序根目录上调试应用程序?例如:http:// localhost:49742 /
我总是得到一个不存在的页面,例如: http:// localhost:49742 / Views / Home / About.aspx
如何开始在应用程序根目录上调试应用程序?例如:http:// localhost:49742 /
我总是得到一个不存在的页面,例如: http:// localhost:49742 / Views / Home / About.aspx
Answers:
转到项目的属性,然后设置起始页属性。
虽然您可以在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
);
}
为了使此功能起作用,您需要在项目中具有一个设置的起始页。
如果要按描述的那样从“应用程序根目录”启动,请在顶层Default.aspx页上单击鼠标右键,然后选择“设置为起始页”。按F5键,就完成了。
如果要从其他控制器动作开始,请参阅Mark的答案。
再次访问此页面,我还有更多信息可以与他人分享。
调试环境(使用Visual Studio)
1a)Stephen Walter的使用项目属性在MVC上设置启动页面的链接仅在调试MVC应用程序时适用。
1b)在解决方案资源管理器中的.aspx页上单击鼠标右键,然后选择“设置为起始页”,其行为相同。
注意:在以上两种情况下,启动页面设置只能由Visual Studio Development Server识别。您的已部署服务器无法识别它。
部署环境
2a)要设置启动页面(假设您没有更改任何默认路由),请更改/Views/Home/Index.aspx的内容,以根据需要执行“ Server.Transfer”或“ Response.Redirect”页。
2b)将您的global.asax.cs中的默认路由更改为所需的页面。
读者知道还有其他选择吗?以上哪种选择(包括您自己的选择)将是您的首选解决方案(请与我们分享原因)?