C# 试图将承载令牌实现为swaggger

C# 试图将承载令牌实现为swaggger,c#,swagger,C#,Swagger,我正在尝试将承载身份验证添加到swagger api中,我对这个案例非常糟糕,我正在尝试了解一些事情(Im 14…)情况是,没有为我找到ApiKeyScheme。。。 这是我的代码: c.AddSecurityDefinition("Bearer", new ApiKeyScheme { In = "header", Description = "Please enter into f

我正在尝试将承载身份验证添加到swagger api中,我对这个案例非常糟糕,我正在尝试了解一些事情(Im 14…)情况是,没有为我找到ApiKeyScheme。。。 这是我的代码:

c.AddSecurityDefinition("Bearer",
                            new ApiKeyScheme { In = "header",
                            Description = "Please enter into field the word 'Bearer' following by space and JWT", 
                            Name = "Authorization", Type = "apiKey" });
                            c.AddSecurityRequirement(new Dictionary<string, IEnumerable<string>> {
                            { "Bearer", Enumerable.Empty<string>() },
                        });
我对此很困惑,有人能冷静地给我解释一下吗?:)

c.AddSecurityDefinition(“Bearer”),新的OpenApiSecurityScheme
{
描述=
“使用承载方案的JWT授权头。\r\n\r\n输入'Bearer'[space],然后在下面的文本输入中输入您的令牌。\r\n\r\n例如:\“Bearer 12345abcdef\”,
Name=“授权”,
In=参数位置.Header,
类型=SecuritySchemeType.ApiKey,
Scheme=“持票人”
});
c、 includexmlcoments($@“{AppDomain.CurrentDomain.BaseDirectory}\I.Api.xml”);
c、 操作过滤器();
c、 操作过滤器();

错误是什么?请尝试使用Swashback。这将使生成Stragger json更容易@Jason找不到类型名或名称空间“ApiKeyScheme”(没有使用指令或程序集引用?)我在JM123上做了,我还将我的DB连接到了swagger,并进行了dotnet ef迁移,结果成功了,但是现在我想在我的帖子中添加Bear…我会尽我最大的努力来帮助你,因为我不使用.net核心版本的Swashback,如果我理解正确的话,你有需要在标题中添加令牌进行身份验证的调用。但是,由于它不是方法签名的一部分,所以它看不到它,也不会生成它?新apiSchem的ibnstead使用OpenApiSecurity
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.EntityFrameworkCore;
using EdictApi.Models;
using Microsoft.OpenApi.Models;
using System;
using System.Linq;
            c.AddSecurityDefinition("Bearer", new OpenApiSecurityScheme
            {
                Description =
                    "JWT Authorization header using the Bearer scheme. \r\n\r\n Enter 'Bearer' [space] and then your token in the text input below.\r\n\r\nExample: \"Bearer 12345abcdef\"",
                Name = "Authorization",
                In = ParameterLocation.Header,
                Type = SecuritySchemeType.ApiKey,
                Scheme = "Bearer"
            });
            c.IncludeXmlComments($@"{AppDomain.CurrentDomain.BaseDirectory}\I.Api.xml");
            c.OperationFilter<T2ParametersOperationFilter>();
            c.OperationFilter<T1ParametersOperationFilter>();