2017-08-16 6 views
1

bei dem Versuch, den Inhaber lautende Token hinzufügen Swashbuckle Prahlerei-DokumentEnableApiKeySupport erzeugt Fehler

mit i in SwaggerConfig.cs diesen Fehler bekam swaggeruiconfig nicht Definition enthält für 'EnableApiKeySupport'

error

weiß jemand, was der Grund sein könnte

Update

dies die gesamte 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); 
    } 
} 

}

+0

Das sollte gut funktionieren! Kannst du deine ganze SwaggerConfig.cs in die Frage einfügen ... – HelderSepu

+0

Auch welche Version von swashbuckle benutzt du? – HelderSepu

+0

Swashbuckle Version 5.6.0 –

Antwort

1

Das glaube ich ist etwas an Ihrem Projekt außerhalb Swashbuckle, habe ich ein Testprojekt mit Ihrem GlobalConfiguration und es kompiliert ohne Fehler:
https://github.com/heldersepu/csharp-proj/tree/master/WebApi560

An diesem Testprojekt I die folgenden Pakete bin mit:

<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" /> 



Sie können versuchen, zu sehen, welche Optionen für die SwaggerUiConfig Verfügung stehen ...
in Ihrem Visual Studio Projekt die EnableApiKeySupport entfernen und lassen Sie die IntelliSense zeigen Ihnen, was verfügbar ist, sollten Sie so etwas wie sehen:

enter image description here

Wenn deins nicht wie das auf meinem Bild aussieht. Sie überschreiben möglicherweise die Klasse SwaggerUiConfig.

+0

Gelöst durch Hinzufügen einer Referenz für Swashbuckle.Core, die Referenz fehlte, obwohl das Paket korrekt installiert ist, half Ihre Demo sehr, vielen Dank. –

Verwandte Themen