【发布时间】:2023-03-30 01:10:02
【问题描述】:
我使用 ASP.NET Core 2.1 MVC 创建了一个 Web 应用程序。
目前我在发布应用程序时遇到路由问题。
将发布应用程序的 url 格式是这样的:https://hostername.com/{some_parameter}
我的应用程序生成的所有 url-s 都应该“附加”到上述 url。
所以我需要这样的路由:
https://hostername.com/{some_parameter}/{controller}/{action}/{id}
一些例子:
- https://hostername.com/ApplicationName/Home/Profile
- https://hostername.com/ApplicationName/Home/Settings
- https://hostername.com/ApplicationName/FAQ etc...
在阅读了有关 stackoverflow 的几个问题/解决方案后,我对此的解决方案: 将默认路由更改为
routes.MapRoute(
name: "default",
template: $"{{parameter={settings.PrefixURL}}}/{{controller=Home}}/{{action=Index}}/{{id?}}");
settings.PrefixURL => it's the some_parameter 的值是动态的。
我面临的问题 => url中的双参数,例如:
- https://hostername.com/ApplicationName/Home/Home/Profile
- https://hostername.com/ApplicationName/ApplicationName/FAQ
在本地测试时,默认路由的配置运行良好,但在发布路由后仍然有效,但 url 错误。 什么可能导致问题? 创建区域会解决路由到那种 url 的问题吗?
谢谢。
【问题讨论】:
标签: c# asp.net-mvc-routing asp.net-core-2.1