Net Core:Swashbuckle 将 operationId 自动设置为控制器操作方法
Net Core: Swashbuckle Set operationId Automatically on to Controller Action Method
我们正在尝试覆盖 Swashbuckle/Swagger IO CodeGen 命名约定,当它为现有的 500 多个控制器和相应方法创建 Angular API 服务代理时。
目前正在将 Net Core 3 API 与 Angular Typescript 链接。
以下答案有效:
[HttpGet("{id:int}", Name = nameof(GetProductById))]
public IActionResult GetProductById(int id) // operationId = "GetProductById"'
[HttpGet("{id:int}", Name = "GetProductById")]
public IActionResult GetProductById(int id) // operationId = "GetProductById"'
有没有办法在启动时循环遍历所有控制器和方法?名称应等于控制器中操作方法的名称。
这可能是可行的解决方案,但是,我需要操作值。
return services.AddSwaggerGen(c =>
{
c.CustomOperationIds(e => $"{e.ActionDescriptor.RouteValues["controller"]}_{e.HttpMethod}");
利用这段代码:
return services.AddSwaggerGen(c =>
{
c.CustomOperationIds(e => $"{e.ActionDescriptor.RouteValues["action"]}");
我们正在尝试覆盖 Swashbuckle/Swagger IO CodeGen 命名约定,当它为现有的 500 多个控制器和相应方法创建 Angular API 服务代理时。
目前正在将 Net Core 3 API 与 Angular Typescript 链接。
以下答案有效:
[HttpGet("{id:int}", Name = nameof(GetProductById))]
public IActionResult GetProductById(int id) // operationId = "GetProductById"'
[HttpGet("{id:int}", Name = "GetProductById")]
public IActionResult GetProductById(int id) // operationId = "GetProductById"'
有没有办法在启动时循环遍历所有控制器和方法?名称应等于控制器中操作方法的名称。
这可能是可行的解决方案,但是,我需要操作值。
return services.AddSwaggerGen(c =>
{
c.CustomOperationIds(e => $"{e.ActionDescriptor.RouteValues["controller"]}_{e.HttpMethod}");
利用这段代码:
return services.AddSwaggerGen(c =>
{
c.CustomOperationIds(e => $"{e.ActionDescriptor.RouteValues["action"]}");