2017-12-01 2 views
0

Ich versuche, Swagger UI auf meiner ASP.NET Core Web API anzupassen.Cutomize Swagger UI ASP.NET Core Web API

Ich möchte die Benutzeroberfläche wie folgt aus:

enter image description here

ich nach diesen Anleitungen:

Dies ist Startup.cs Konfiguration:

// Add the detail information for the API. 
services.ConfigureSwaggerGen(options => 
{ 
    // Determine base path for the application. 
    var basePath = _env.WebRootPath; 

    // Complete path 
    var xmlPath = Path.Combine(basePath, "myapi.xml"); 

    // Set the comments path for the swagger json and ui. 
    options.IncludeXmlComments(xmlPath); 
}); 

app.UseStaticFiles(); 

// Enable middleware to serve generated Swagger as a JSON endpoint 
app.UseSwagger(); 

// Enable middleware to serve swagger-ui assets (HTML, JS, CSS etc.) 
app.UseSwaggerUI(c => 
{     
    c.SwaggerEndpoint("/swagger/v1/swagger.json", "MyAPI"); 
}); 

ich schon Prahlerei ui-Dateien aus dem git-Repository heruntergeladen und auf mein Projekt wie folgt aus:

enter image description here

Ich weiß nicht, ob dies das Richtige zu tun, aber ich Ich kann keine Änderungen an der Swagger-Benutzeroberfläche sehen.

+0

In Ihrer 'index.html' Datei referenzieren Sie Ihre CSS? Gehen Sie auch zu "http: // localhost: /swagger/ui/index.html" und geben Sie "http: // localhost: /swagger/v1/swagger.json" in das Eingabefeld oben ein die gerenderte Seite? –

+0

Das ist das Problem. Diese Seite index.html wird nicht aufgerufen. – perozzo

+0

Wie meinst du, 'Diese index.html Seite wird nicht aufgerufen? Haben Sie versucht, zu diesem Thema zu navigieren, um sicherzustellen, dass es korrekt bedient wird? –

Antwort

1

Das vorliegende Tutorial Sie wird wie folgt verwendet: Swashbuckle.AspNetCore leider in diesem Projekt, das sie immer noch die Prahlerei-UI Version 2.x, Ihr Screenshot zeigt Version 3.x


Es gibt ein paar ziehen Sie Anfragen an neuesten Swagger-UI zu aktualisieren:

Aber leider gibt es nicht viel Fortschritt auf dem Weg, diese zu verschmelzen.

Ich sehe, dass Sie wissen, wie Dateien von einer Git-Repository zum Download ...
Meine Empfehlung:
Anstatt die Prahlerei-ui das Herunterladen von Dateien, laden Sie das gesamte Projekt Swashbuckle.AspNetCore von einer Gabel, die ist Verwenden Sie die von Ihnen benötigte Version (z. B. alexvaluyskiy/Swashbuckle.AspNetCore), und fügen Sie in Ihrem Projekt anstelle des nugget-Pakets einen Verweis auf dieses Projekt hinzu.


Eine andere Option könnte sein, Ihre eigenen Fork von Swashbuckle.AspNetCore zu erstellen, die Fixes zusammenzuführen, die Sie benötigen, und dann Ihr eigenes Nuget-Paket mit einem anderen Namen zu veröffentlichen.

+0

sieht aus wie diese Probleme geschlossen wurden –

Verwandte Themen