EnableApiKeySupport会生成错误

时间:2017-08-16 18:55:05

标签: swagger swashbuckle

尝试使用Swashbuckle swagger-document

添加持票人令牌时

我在SwaggerConfig.cs中遇到此错误 swaggeruiconfig不包含' EnableApiKeySupport'

的定义

error

做任何身体知道可能是什么原因

更新

这是整个swagger.config

using System.Web.Http;
using WebActivatorEx;
using Swashbuckle.Application;

[assembly: PreApplicationStartMethod(typeof(SwaggerConfig), "Register")]

namespace AppNameSpace
{
public class SwaggerConfig
{
    public static void Register()
    {
        var thisAssembly = typeof(SwaggerConfig).Assembly;

        GlobalConfiguration.Configuration
            .EnableSwagger(c =>
                {
                    c.ApiKey("Token")
                     .Description("Filling bearer token here")
                     .Name("Authorization")
                     .In("header");

                    c.SingleApiVersion("v2", "AppNameSpace");

                    c.IncludeXmlComments(GetXmlCommentsPath());


                })
            .EnableSwaggerUi(c =>
                {
                    c.EnableApiKeySupport("Authorization", "header");


                });
    }
    protected static string GetXmlCommentsPath()
    {
        return System.String.Format(@"{0}\bin\AppNameSpace.XML", System.AppDomain.CurrentDomain.BaseDirectory);
    }
}

}

1 个答案:

答案 0 :(得分:2)

我相信这是Swashbuckle之外的项目,我使用您的GlobalConfiguration创建了一个测试项目,它编译时没有任何错误:
https://github.com/heldersepu/csharp-proj/tree/master/WebApi560

在该测试项目中,我正在使用以下软件包:

<package id="Swashbuckle" version="5.6.0" targetFramework="net452" />
<package id="Swashbuckle.Core" version="5.6.0" targetFramework="net452" />
<package id="WebActivatorEx" version="2.0" targetFramework="net452" />



您可以尝试查看SwaggerUiConfig可用的选项...
在VisualStudio项目中删除EnableApiKeySupport并让IntelliSense向您显示可用的内容,您应该看到如下内容:

enter image description here

如果你的照片看起来不像我的照片。您可能会覆盖SwaggerUiConfig类。