Skip to content

Commit f99648b

Browse files
committed
Remove OpenApi dependency
1 parent b00495c commit f99648b

11 files changed

Lines changed: 69 additions & 72 deletions

Program.cs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,11 @@
4444

4545
// Swagger
4646
app.UseSwagger();
47-
app.UseSwaggerUI();
47+
app.UseSwaggerUI(options =>
48+
{
49+
options.SwaggerEndpoint("/swagger/v1/swagger.json", "TodoApi v1");
50+
options.RoutePrefix = "api-docs";
51+
});
4852

4953
// Authorization
5054
app.UseAuthorization();
@@ -54,12 +58,14 @@
5458
// Custom landing page at "/"
5559
app.MapGet("/", (HttpContext context) =>
5660
{
57-
var swaggerUrl = $"{context.Request.Scheme}://{context.Request.Host}/swagger";
61+
var swaggerUrl = $"{context.Request.Scheme}://{context.Request.Host}/api-docs";
62+
var docsUrl = $"{context.Request.Scheme}://{context.Request.Host}/docs/index.html";
5863

5964
return Results.Text(
6065
$"""
6166
<h1>TodoAPI</h1>
6267
<p>See the <a href='{swaggerUrl}'>Swagger UI</a>.</p>
68+
<p>Test the <a href='{docsUrl}'>Frontend</a>.</p>
6369
6470
""",
6571
"text/html"

TodoApi.csproj

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
</PropertyGroup>
88

99
<ItemGroup>
10-
<PackageReference Include="Microsoft.AspNetCore.OpenApi" Version="9.0.14" />
1110
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="9.0.14" />
1211
<PackageReference Include="Microsoft.EntityFrameworkCore.InMemory" Version="9.0.14" />
1312
<PackageReference Include="Swashbuckle.AspNetCore" Version="10.1.5" />
-191 KB
Binary file not shown.
236 KB
Binary file not shown.
-512 Bytes
Binary file not shown.
10 KB
Binary file not shown.
-1.48 MB
Binary file not shown.

bin/Debug/net9.0/TodoApi.deps.json

Lines changed: 61 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -8,26 +8,14 @@
88
".NETCoreApp,Version=v9.0": {
99
"TodoApi/1.0.0": {
1010
"dependencies": {
11-
"Microsoft.AspNetCore.OpenApi": "9.0.14",
1211
"Microsoft.EntityFrameworkCore": "9.0.14",
1312
"Microsoft.EntityFrameworkCore.InMemory": "9.0.14",
14-
"Swashbuckle.AspNetCore": "6.9.0"
13+
"Swashbuckle.AspNetCore": "10.1.5"
1514
},
1615
"runtime": {
1716
"TodoApi.dll": {}
1817
}
1918
},
20-
"Microsoft.AspNetCore.OpenApi/9.0.14": {
21-
"dependencies": {
22-
"Microsoft.OpenApi": "1.6.17"
23-
},
24-
"runtime": {
25-
"lib/net9.0/Microsoft.AspNetCore.OpenApi.dll": {
26-
"assemblyVersion": "9.0.14.0",
27-
"fileVersion": "9.0.1426.11909"
28-
}
29-
}
30-
},
3119
"Microsoft.EntityFrameworkCore/9.0.14": {
3220
"dependencies": {
3321
"Microsoft.EntityFrameworkCore.Abstractions": "9.0.14",
@@ -64,7 +52,7 @@
6452
}
6553
}
6654
},
67-
"Microsoft.Extensions.ApiDescription.Server/6.0.5": {},
55+
"Microsoft.Extensions.ApiDescription.Server/9.0.0": {},
6856
"Microsoft.Extensions.Caching.Abstractions/9.0.14": {
6957
"dependencies": {
7058
"Microsoft.Extensions.Primitives": "9.0.14"
@@ -154,52 +142,56 @@
154142
}
155143
}
156144
},
157-
"Microsoft.OpenApi/1.6.17": {
145+
"Microsoft.OpenApi/2.4.1": {
146+
"dependencies": {
147+
"System.Text.Json": "8.0.5"
148+
},
158149
"runtime": {
159-
"lib/netstandard2.0/Microsoft.OpenApi.dll": {
160-
"assemblyVersion": "1.6.17.0",
161-
"fileVersion": "1.6.17.0"
150+
"lib/net8.0/Microsoft.OpenApi.dll": {
151+
"assemblyVersion": "2.4.1.0",
152+
"fileVersion": "2.4.1.0"
162153
}
163154
}
164155
},
165-
"Swashbuckle.AspNetCore/6.9.0": {
156+
"Swashbuckle.AspNetCore/10.1.5": {
166157
"dependencies": {
167-
"Microsoft.Extensions.ApiDescription.Server": "6.0.5",
168-
"Swashbuckle.AspNetCore.Swagger": "6.9.0",
169-
"Swashbuckle.AspNetCore.SwaggerGen": "6.9.0",
170-
"Swashbuckle.AspNetCore.SwaggerUI": "6.9.0"
158+
"Microsoft.Extensions.ApiDescription.Server": "9.0.0",
159+
"Swashbuckle.AspNetCore.Swagger": "10.1.5",
160+
"Swashbuckle.AspNetCore.SwaggerGen": "10.1.5",
161+
"Swashbuckle.AspNetCore.SwaggerUI": "10.1.5"
171162
}
172163
},
173-
"Swashbuckle.AspNetCore.Swagger/6.9.0": {
164+
"Swashbuckle.AspNetCore.Swagger/10.1.5": {
174165
"dependencies": {
175-
"Microsoft.OpenApi": "1.6.17"
166+
"Microsoft.OpenApi": "2.4.1"
176167
},
177168
"runtime": {
178-
"lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll": {
179-
"assemblyVersion": "6.9.0.0",
180-
"fileVersion": "6.9.0.799"
169+
"lib/net9.0/Swashbuckle.AspNetCore.Swagger.dll": {
170+
"assemblyVersion": "10.1.5.0",
171+
"fileVersion": "10.1.5.2342"
181172
}
182173
}
183174
},
184-
"Swashbuckle.AspNetCore.SwaggerGen/6.9.0": {
175+
"Swashbuckle.AspNetCore.SwaggerGen/10.1.5": {
185176
"dependencies": {
186-
"Swashbuckle.AspNetCore.Swagger": "6.9.0"
177+
"Swashbuckle.AspNetCore.Swagger": "10.1.5"
187178
},
188179
"runtime": {
189-
"lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll": {
190-
"assemblyVersion": "6.9.0.0",
191-
"fileVersion": "6.9.0.799"
180+
"lib/net9.0/Swashbuckle.AspNetCore.SwaggerGen.dll": {
181+
"assemblyVersion": "10.1.5.0",
182+
"fileVersion": "10.1.5.2342"
192183
}
193184
}
194185
},
195-
"Swashbuckle.AspNetCore.SwaggerUI/6.9.0": {
186+
"Swashbuckle.AspNetCore.SwaggerUI/10.1.5": {
196187
"runtime": {
197-
"lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll": {
198-
"assemblyVersion": "6.9.0.0",
199-
"fileVersion": "6.9.0.799"
188+
"lib/net9.0/Swashbuckle.AspNetCore.SwaggerUI.dll": {
189+
"assemblyVersion": "10.1.5.0",
190+
"fileVersion": "10.1.5.2342"
200191
}
201192
}
202-
}
193+
},
194+
"System.Text.Json/8.0.5": {}
203195
}
204196
},
205197
"libraries": {
@@ -208,13 +200,6 @@
208200
"serviceable": false,
209201
"sha512": ""
210202
},
211-
"Microsoft.AspNetCore.OpenApi/9.0.14": {
212-
"type": "package",
213-
"serviceable": true,
214-
"sha512": "sha512-ywJcbdtem5tFlg73eCFb/ORdsZlASaTf0XixxsTQ8Z/ama/83CXB/nvBrvCrxkk62AKpdTxiESK0SvgmZ9HKFA==",
215-
"path": "microsoft.aspnetcore.openapi/9.0.14",
216-
"hashPath": "microsoft.aspnetcore.openapi.9.0.14.nupkg.sha512"
217-
},
218203
"Microsoft.EntityFrameworkCore/9.0.14": {
219204
"type": "package",
220205
"serviceable": true,
@@ -243,12 +228,12 @@
243228
"path": "microsoft.entityframeworkcore.inmemory/9.0.14",
244229
"hashPath": "microsoft.entityframeworkcore.inmemory.9.0.14.nupkg.sha512"
245230
},
246-
"Microsoft.Extensions.ApiDescription.Server/6.0.5": {
231+
"Microsoft.Extensions.ApiDescription.Server/9.0.0": {
247232
"type": "package",
248233
"serviceable": true,
249-
"sha512": "sha512-Ckb5EDBUNJdFWyajfXzUIMRkhf52fHZOQuuZg/oiu8y7zDCVwD0iHhew6MnThjHmevanpxL3f5ci2TtHQEN6bw==",
250-
"path": "microsoft.extensions.apidescription.server/6.0.5",
251-
"hashPath": "microsoft.extensions.apidescription.server.6.0.5.nupkg.sha512"
234+
"sha512": "sha512-1Kzzf7pRey40VaUkHN9/uWxrKVkLu2AQjt+GVeeKLLpiEHAJ1xZRsLSh4ZZYEnyS7Kt2OBOPmsXNdU+wbcOl5w==",
235+
"path": "microsoft.extensions.apidescription.server/9.0.0",
236+
"hashPath": "microsoft.extensions.apidescription.server.9.0.0.nupkg.sha512"
252237
},
253238
"Microsoft.Extensions.Caching.Abstractions/9.0.14": {
254239
"type": "package",
@@ -306,40 +291,47 @@
306291
"path": "microsoft.extensions.primitives/9.0.14",
307292
"hashPath": "microsoft.extensions.primitives.9.0.14.nupkg.sha512"
308293
},
309-
"Microsoft.OpenApi/1.6.17": {
294+
"Microsoft.OpenApi/2.4.1": {
295+
"type": "package",
296+
"serviceable": true,
297+
"sha512": "sha512-u7QhXCISMQuab3flasb1hoaiERmUqyWsW7tmQODyILoQ7mJV5IRGM+2KKZYo0QUfC13evEOcHAb6TPWgqEQtrw==",
298+
"path": "microsoft.openapi/2.4.1",
299+
"hashPath": "microsoft.openapi.2.4.1.nupkg.sha512"
300+
},
301+
"Swashbuckle.AspNetCore/10.1.5": {
310302
"type": "package",
311303
"serviceable": true,
312-
"sha512": "sha512-Le+kehlmrlQfuDFUt1zZ2dVwrhFQtKREdKBo+rexOwaCoYP0/qpgT9tLxCsZjsgR5Itk1UKPcbgO+FyaNid/bA==",
313-
"path": "microsoft.openapi/1.6.17",
314-
"hashPath": "microsoft.openapi.1.6.17.nupkg.sha512"
304+
"sha512": "sha512-/eNk9z/8quXhDX14o3XLbwAX/84uIWSbiUD7cI/UrQnoBMOiyAtzKxNEJUtf/TyxjFpcXxE9FAfLvtbNpxHBSg==",
305+
"path": "swashbuckle.aspnetcore/10.1.5",
306+
"hashPath": "swashbuckle.aspnetcore.10.1.5.nupkg.sha512"
315307
},
316-
"Swashbuckle.AspNetCore/6.9.0": {
308+
"Swashbuckle.AspNetCore.Swagger/10.1.5": {
317309
"type": "package",
318310
"serviceable": true,
319-
"sha512": "sha512-lvI+XHF21tkwXd2nDCLGJsdhdUYsY3Ax2fWUlvw81Oa6EedtnIAf5tThy8ZnPcz/9/TwsLgjgtX9ifOCIjbEPA==",
320-
"path": "swashbuckle.aspnetcore/6.9.0",
321-
"hashPath": "swashbuckle.aspnetcore.6.9.0.nupkg.sha512"
311+
"sha512": "sha512-s4Mct6+Ob0LK9vYVaZcYi/RFFCOEJNjf6nJ5ZPoxtpdFSlzR6i9AHI7Vl44obX8cynRxJW7prA1IUabkiXolFg==",
312+
"path": "swashbuckle.aspnetcore.swagger/10.1.5",
313+
"hashPath": "swashbuckle.aspnetcore.swagger.10.1.5.nupkg.sha512"
322314
},
323-
"Swashbuckle.AspNetCore.Swagger/6.9.0": {
315+
"Swashbuckle.AspNetCore.SwaggerGen/10.1.5": {
324316
"type": "package",
325317
"serviceable": true,
326-
"sha512": "sha512-P316kpxx5DnDvJwNWW8iTAXkh9DVenAxFGe9v4OUS0gil+vitH7F1feXhCtVeHN/616EFNTMh4pV2lcr9kkw/w==",
327-
"path": "swashbuckle.aspnetcore.swagger/6.9.0",
328-
"hashPath": "swashbuckle.aspnetcore.swagger.6.9.0.nupkg.sha512"
318+
"sha512": "sha512-ysQIRgqnx4Vb/9+r3xnEAiaxYmiBHO8jTg7ACaCh+R3Sn+ZKCWKD6nyu0ph3okP91wFSh/6LgccjeLUaQHV+ZA==",
319+
"path": "swashbuckle.aspnetcore.swaggergen/10.1.5",
320+
"hashPath": "swashbuckle.aspnetcore.swaggergen.10.1.5.nupkg.sha512"
329321
},
330-
"Swashbuckle.AspNetCore.SwaggerGen/6.9.0": {
322+
"Swashbuckle.AspNetCore.SwaggerUI/10.1.5": {
331323
"type": "package",
332324
"serviceable": true,
333-
"sha512": "sha512-FjeMR3fBzwVc5plfYjoHw9ptf8SOWMupvO9X35J5EgzT3L9dRqSxa+cBKzL8PwCyemY0xNrggQSB5+MFWx1axg==",
334-
"path": "swashbuckle.aspnetcore.swaggergen/6.9.0",
335-
"hashPath": "swashbuckle.aspnetcore.swaggergen.6.9.0.nupkg.sha512"
325+
"sha512": "sha512-tQWVKNJWW7lf6S0bv22+7yfxK5IKzvsMeueF4XHSziBfREhLKt42OKzi6/1nINmyGlM4hGbR8aSMg72dLLVBLw==",
326+
"path": "swashbuckle.aspnetcore.swaggerui/10.1.5",
327+
"hashPath": "swashbuckle.aspnetcore.swaggerui.10.1.5.nupkg.sha512"
336328
},
337-
"Swashbuckle.AspNetCore.SwaggerUI/6.9.0": {
329+
"System.Text.Json/8.0.5": {
338330
"type": "package",
339331
"serviceable": true,
340-
"sha512": "sha512-0OxlWBFLl2gUESZX/K7QCTz9KctKy0VxHTvLIBcyWGD4z/fv5MCMW02qzYGcReLJr4yBnNDRzApKtLh6oBpe9A==",
341-
"path": "swashbuckle.aspnetcore.swaggerui/6.9.0",
342-
"hashPath": "swashbuckle.aspnetcore.swaggerui.6.9.0.nupkg.sha512"
332+
"sha512": "sha512-0f1B50Ss7rqxXiaBJyzUu9bWFOO2/zSlifZ/UNMdiIpDYe4cY4LQQicP4nirK1OS31I43rn062UIJ1Q9bpmHpg==",
333+
"path": "system.text.json/8.0.5",
334+
"hashPath": "system.text.json.8.0.5.nupkg.sha512"
343335
}
344336
}
345337
}

bin/Debug/net9.0/TodoApi.dll

512 Bytes
Binary file not shown.

bin/Debug/net9.0/TodoApi.exe

-1 KB
Binary file not shown.

0 commit comments

Comments
 (0)