2016-10-03 53 views
0

我有一個類似於「MyActionName」的動作的WebAPI 此路線設置爲類似於Books\Read的內容。如何使用Swashbuckle在Swagger中設置操作名稱

我有XML註釋和Swashbuckle config'd來生成SwaggerUI幫助頁面。

這些操作在Swagger UI中正確列出,顯示爲Books\Read作爲操作的名稱(例如)。

但是,基於Swagger.json的codegen會生成名爲「MyActionName」的動作,這是C#代碼中的原始名稱。

如何將操作名稱設置爲其他內容,更像路線(例如:BooksRead)?

回答

1

您可以創建類似下面的操作篩選:

public class AssignOperationFilters : IOperationFilter 
    {   
     public void Apply(Operation operation, SchemaRegistry schemaRegistry, ApiDescription apiDescription) 
     {    
      if (operation != null) 
      { 
       operation.operationId = "OperationName"; // Give whatever name that is required 
      } 
     } 
    } 

此外,在招搖配置文件附加操作過濾器:

c.OperationFilter<AssignOperationFilters>(); 
相關問題