目的
每次要使用swaggerUI時候範例總是各式各樣,千奇百怪,下列範例是使用官方預設的Swashbuckle套件來教學。
建立新專案
選擇ASP.NET Core Web API專案範本,並執行下一步
設定新的專案
命名你的專案名稱,並選擇專案要存放的位置。
其他資訊
選擇.net6版本,支援OpenAPI支援一定要勾選,此選項.net5以後才會有,.net core 3.1並沒有此選項,需要從NuGet安裝,並點建立
專案基本設定
右邊紅框處專案檔點兩下,會開啟專案的xml檔案,額外加入兩行xml資料,目的是要透過編譯器產生文件檔案
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<NoWarn>$(NoWarn);1591</NoWarn>
- 加入前
- 加入後
編輯Program.cs檔案
修改program檔案內容,調整AddSwaggerGen的內容,目的是為了可以讀取我們所寫的註解 program檔案與.net5以前不一樣,保哥的部落格有比較詳細的說明
builder.Services.AddSwaggerGen(options => {
// using System.Reflection;
var xmlFilename = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml";
options.IncludeXmlComments(Path.Combine(AppContext.BaseDirectory, xmlFilename));
});
- 加入前
- 加入後
編輯WeatherForecastController檔案
這裡有個重點,如果要增加下一個action時候,預設的範例檔案,需要調整route的設定,才能讀取到,不然會跳錯誤訊息
- 加入前
- 加入後 加入第二個方法
執行結果
就可以成功讀取到兩個方法了