2

VS2013 には、いくつかのクラス ライブラリと Web API プロジェクトを含むソリューションがあります。Swagger UI をセットアップするときに、いくつかの問題が発生しています。まず、Web API プロジェクト用に swashbuckle をセットアップするとき、1 つのドキュメント XML ファイルしか参照できません。Swagger がコントローラー内のルートのドキュメントだけでなく、他のプロジェクトのドメイン オブジェクトも取得できるように、複数の XML ファイルを含めるように指定する方法はありますか? ここに SwaggerConfig.cs からの私のコードがあります

SwaggerSpecConfig.Customize
    (
        c =>
        {
            c.IncludeXmlComments(Path.Combine(dirPath, projName + ".xml"));
        }
    );

複数の XML ファイルを追加すると、IncludeXmlComments から最後のファイルのみが取得されます。

次に、JSON で返すときに DTO にキャメル ケースを使用しています。

formats.JsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();

しかし、Swagger UI の応答クラスで応答モデルとモデル スキーマを見ると、エンドポイントがヒットしたときに返される JSON スキーマではなく、正確なクラス プロパティ名が表示されます。Swagger UI ドキュメント ページに正確な JSON スキーマを表示する方法はありますか?

4

3 に答える 3

0

バージョン 4.1 以降では、次のように記述できます。

c.IncludeXmlComments("File1_Path");
c.IncludeXmlComments("File2_Path"));

こちらもご覧ください

于 2015-12-29T12:10:57.683 に答える