如何通过反射从方法获取路线(Url)。 从控制器和方法开始,如下所示:
[ApiController]
[Authorize]
[Route("api/events/[controller]")]
public class ApprovedWorksController : ControllerBase
{
...
[HttpPost]
public async Task<IEnumerable<ApprovedWorkResponse>> GetAsync(ApprovedWorkFilter filter)
{
...
}
}
收件人:
api/events/ApprovedWorks ...
答案 0 :(得分:0)
我用它来解决问题:
var routeAttribute = controller.GetCustomAttribute(typeof(RouteAttribute));
if (routeAttribute != null)
Console.WriteLine(((RouteAttribute) routeAttribute).Template.Replace("/[controller]", "")
+ "/" + controller.Name.Replace("Controller", "")
+ "/" + methodInfo.Name);
答案 1 :(得分:0)