【发布时间】:2018-07-31 14:01:02
【问题描述】:
我需要使用 API 控制器方法的路由作为重定向的前缀。
我(当然)可以对它们进行硬编码,但我更喜欢动态获取它们,因此如果我更改路由或控制器名称,它会被逻辑更新。
[Route("api/v1/[controller]")]
public class TestController : ControllerBase
{
[HttpGet("{path}")]
public async Task<IActionResult> Get(string path)
{
string prefix = "api/v1/Other/"; //how to get that part dynamically?
return Redirect(prefix + path);
}
}
[Route("api/v1/[controller]")]
public class OtherController : ControllerBase
{
[HttpGet("{path}")]
public async Task<IActionResult> Get(string path)
{
}
}
如果 Route 注释或控制器名称发生更改,我如何将 TestController 中的前缀作为字符串动态更新? 我真的很需要它。
【问题讨论】:
-
如果控制器名称可以更改,为什么不更改此代码?
标签: c# .net-core asp.net-core-routing .net-core-2.1