如何配置ASP.NET Core启动路由实现ASP.NET MVC5当前页启动效果
ASP.NET Core MVC 实现「编辑当前页启动对应路由」配置方法
在旧版本ASP.NET MVC 5中,使用Ctrl+F5启动项目时,Visual Studio会自动将当前正在编辑的工作文件对应路由设置为浏览器启动地址:当你编辑Home控制器下的About.cshtml文件时启动项目,浏览器将自动打开localhost/home/about路由地址。
要在ASP.NET Core MVC中复现这个行为,按以下步骤配置即可:
- 右键解决方案资源管理器中的Web项目节点,选择「属性」菜单
- 切换到「调试」选项卡,找到启动操作相关配置,在启动URL的下拉选项中选择当前页

- 打开项目根目录下的
Properties/launchSettings.json文件,找到你正在使用的启动配置(通常对应iisSettings下的IIS Express配置,或是项目自托管的http/https配置段),将对应段的launchUrl字段值设置为空字符串:"launchUrl": "", - 确认项目的MVC路由配置正确,以.NET 6+的
Program.cs为例,标准路由配置如下:var builder = WebApplication.CreateBuilder(args); // 注册MVC控制器与视图服务 builder.Services.AddControllersWithViews(); var app = builder.Build(); // 开发环境以外的异常处理配置 if (!app.Environment.IsDevelopment()) { app.UseExceptionHandler("/Home/Error"); app.UseHsts(); } app.UseHttpsRedirection(); app.UseStaticFiles(); app.UseRouting(); app.UseAuthorization(); // 配置默认MVC路由规则 app.MapControllerRoute( name: "default", pattern: "{controller=Home}/{action=Index}/{id?}"); app.Run();
配置完成后重启Visual Studio生效,后续编辑任意视图文件时按下
Ctrl+F5,都会自动按照路由规则拼接对应地址打开,和旧版ASP.NET MVC 5的行为完全一致。如果打开的是cshtml物理文件路径而非路由,检查launchSettings.json中launchUrl是否已经清空,以及路由规则是否和项目的目录结构匹配。
内容的提问来源于stack exchange,提问作者mohammad naser
相关产品推荐
相关产品推荐

