c# - 如何将另一个项目(get,post)api方法引入swagger api项目?

标签 c# asp.net-mvc asp.net-core swagger swashbuckle

我用 asp.net core 创建了一个 API 项目,我在其中使用 swashbuckle.AspNetCore.dll 生成 swagger。

它运行良好,运行良好。

现在我有另一个 C#(.NET 标准库),我在其中创建了一些 GET、POST、DELETE、PUT 方法。

需要将所有这些方法加载到 swagger API 项目中。

我曾尝试将那个单独的 C# 库 (.dll) 用于我的项目,但它没有加载到 swagger。

将此行添加到 Startup.cs 文件中的配置服务方法:

services.AddSwaggerGen(c => {
    c.SwaggerDoc("v1", new Info { Title = "My API", Version = "v1" });
    c.AddSecurityDefinition("Bearer", new ApiKeyScheme {
                In = "header", Description = "Please enter JWT with Bearer into field",
                Name = "Authorization", Type = "apiKey"
        });
    c.AddSecurityRequirement(new Dictionary<string, IEnumerable<string>> {
        { "Bearer", Enumerable.Empty<string>() },
    });
});

将此行添加到 startup.cs 文件中的 Configure 方法:

app.UseSwagger();

// Enable middleware to serve swagger-ui (HTML, JS, CSS, etc.), 
// specifying the Swagger JSON endpoint.
app.UseSwaggerUI(c =>
{
    c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
    c.RoutePrefix = string.Empty;
});

用swagger项目方法展示swagger。它应该显示这两种方法,无论它是在单独的库中还是在 swagger 项目本身中。

最佳答案

我使用服务堆栈 swagger 而不是 swashbuckle。

它解决了我的问题。

这是解决方案。

https://forums.servicestack.net/t/guidance-on-enabling-oauth-2-0-in-generated-swagger-docs/3995/18

关于c# - 如何将另一个项目(get,post)api方法引入swagger api项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55862726/

相关文章:

c# - 在 Windows Phone 后台播放音频

c# - ASP.Net 中的数据缓存与 session 对象

c# - dot Net Core MVC 中的 HttpMethodAttribute 存在奇怪的歧义

authentication - 验证用户/请求是否经过身份验证.net core

c# - 使用 ItemsSource 时添加额外的项目

c# - 如何从 UWP MediaPlayer 获取流元数据?

c# - 如何在带参数的 MVC4 中使用 Url.Content()?

asp.net-core - 延迟加载在 EntityFramework Core 中不起作用

asp.net-mvc - MVC 错误 - 传递到字典中的模型项的类型为 'System.Collections.Generic.List`

asp.net-mvc - 在 Asp Net Core 中使用指定的 Redis 数据库实例