我需要知道是否可以设置自定义operationid或命名约定,我的意思是我知道操作过滤器可以用operationId的生成方式来覆盖
using Swashbuckle.Swagger;
using System.Web.Http.Description;
namespace Something
{
public class MultipleOperationsWithSameVerbFilter : IOperationFilter
{
public void Apply(
Operation operation,
SchemaRegistry schemaRegistry,
ApiDescription apiDescription)
{
if (operation.parameters != null)
{
operation.operationId += "By";
foreach (var parm in operation.parameters)
{
operation.operationId += string.Format("{0}",parm.name);
}
}
}
}
}
在SwaggerConfig.cs中
c.OperationFilter<MultipleOperationsWithSameVerbFilter>();
现在这对转换摇摇晃晃的描述很有帮助,请在下面检查:
很好,现在我结束在一个黑暗的地方,与可能的情况类似的示例:在同一控制器上,我有两个端点
该示例不是很正确(最后一个帖子应该是get),但仍然假定在这种特殊情况下无法更改webapi(用于分离的新控制器),我将尝试找出一种为每个操作生成不同的operationId的方法不知何故,但我的问题是这样的:
是否可以以某种方式装饰与[JsonIgnore]或与[Route(“ customer / delete”)]一起使用,以明确显示operationId
。
我需要知道是否可以设置自定义operationid或命名约定,我的意思是我知道操作过滤器可以覆盖如何生成operationId的方式https:// azure ....
SwaggerOperationAttribute
。UPDATE: