首页 > 解决方案 > 如何处理路由前缀?

问题描述

我正在构建一个 ASP.NET MVC Core 2.2 库,并且我正在寻找一种方法来允许在路由配置中使用任何前缀。

我想向控制器添加一个属性,允许将以下所有 URL 传递给同一个控制器:

/some/prefix/MyControllerName/MyAction/ => /MyControllerName/MyAction/
/yet/another/prefix/MyControllerName/MyAction/ => /MyControllerName/MyAction/
/MyControllerName/MyAction/ => (obviously) /MyControllerName/MyAction/

我尝试了这样的通配符语法,但没有成功:

[Route("*/[controller]/[action]")]
public abstract class MyBaseController : Controller { }

换句话说,我希望完全忽略路径的开头(在实际控制器名称之前)。

标签: c#asp.net-core-mvc

解决方案


推荐阅读