6

私は自分の Asp.Net WebApi 4.0 プロジェクトに swagger-ui (バージョン 2.0) を統合しています。これは私のルート構成です:

config.Routes.MapHttpRoute(
                name: "Common_Get",
                routeTemplate: "common/{controller}/{action}/{id}",
                defaults: new { id = RouteParameter.Optional, action = "Get" },
                constraints: new { httpMethod = new HttpMethodConstraint("GET") }
            );


 config.Routes.MapHttpRoute(
                name: "Active_Get",
                routeTemplate: "active/{controller}/{action}/{id}",
                defaults: new { id = RouteParameter.Optional, action = "Get" },
                constraints: new { httpMethod = new HttpMethodConstraint("GET") }
            );

また、swagger-ui 生成ドキュメントには重複した項目が含まれています。同じコントローラー+アクションがあります。このようにcommonactive

get /common/Advert/GetAdvertise/{id} 
get /active/Advert/GetAdvertise/{id}

get /common/award/GetAward/{id} 
get /active/award/GetAward/{id} 

この問題を回避する方法、またはswaggerサポート領域を有効にする方法(名前は何でも)。各コントローラーの領域を指定できます。正しい結果は次のようになります。

get /common/Advert/GetAdvertise/{id}
get /active/Award/GetAward/{id}
4

0 に答える 0