Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 为什么Swashback.aspnet.core.swagger未被识别_C#_Asp.net Core_Swagger_Swashbuckle - Fatal编程技术网

C# 为什么Swashback.aspnet.core.swagger未被识别

C# 为什么Swashback.aspnet.core.swagger未被识别,c#,asp.net-core,swagger,swashbuckle,C#,Asp.net Core,Swagger,Swashbuckle,虽然我安装了nuget包管理器swashback.AspNetCore.Swagger,并且在顶部包含了usingswashback.AspNetCore.Swagger,但是我在Info{Title}方法上遇到了错误。 有谁能建议如何解决这个问题吗 services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new Info { Title = "My DAB API", Version =

虽然我安装了
nuget包管理器
swashback.AspNetCore.Swagger
,并且在顶部包含了using
swashback.AspNetCore.Swagger
,但是我在
Info{Title}
方法上遇到了错误。 有谁能建议如何解决这个问题吗

 services.AddSwaggerGen(c =>
            {
                c.SwaggerDoc("v1", new Info { Title = "My DAB API", Version = "V3.2.2" });
            }); 

卸载包
swashback.AspNetCore.Swagger
并尝试此包
swashback.AspNetCore.SwaggerGen

,我终于找到了解决方案。我安装了Swashback.AspNetCore版本4.0.1。很明显,它与最新版本5不兼容。

我找到了解决方案

第5版

using Microsoft.OpenApi.Models;


services.AddSwaggerGen(c =>
{
    c.SwaggerDoc("v1", new OpenApiInfo { Title = "My API", Version = "v1" });
});

我在ASP.NET Core 2.1 web api中也遇到了同样的问题,但我已经解决了这个问题,首先安装了较低版本的软件包,并对其进行了版本升级

Swashback.AspNetCore 2.1.0,然后在我一个版本一个版本地升级包之后,直到我得到相同的错误,但我没有再次收到相同的错误,即使升级到Swashback.AspNetCore 5.0.0-rc2&它现在可以通过以下配置正常工作

按照以下方式使用名称空间,因为在最新版本的swagger中不再使用Info类,而是使用OpenApiInfo类来描述swagger元数据

using Microsoft.OpenApi.Models;
然后在ConfigureServices方法下的Startup.cs类中使用以下代码

 services.AddSwaggerGen(c =>
        {
            c.SwaggerDoc("v1", new OpenApiInfo { Title = "www.compilemode.com", Version = "v1" });
        });

这是一个非常奇怪的解决方案,但这是我花了很多时间后发现的唯一解决办法。

只要安装Microsoft.OpenApi包就可以解决这个问题。

如果您使用的是DotnetCore(>=3.0),请确保您使用的是预发行版(从现在的12月19日开始)属于
Swashback.AspNetCore
软件包,该软件包是
-Version 5.0.0-rc4
。我错误地安装了最新的稳定版本
4.0.1
,其中缺少
Microsoft.OpenApi.Models


这来自5.0.0及以上版本(不是通过逐个版本升级)。此处的更多信息:如果需要OpenApiInfo内部的联系人,则它也需要是OpenApiContact->new OpenApiContact{Contact=new OpenApiContact{Name=”“,Email=”“}