Dies ist meine erste Web-API, erste Web-App, und das erste Mal habe ich Swagger über Swashbuckler verwendet. Ich verwende TPH für meine Geräte-DB-Tabelle.
Zum Beispiel habe ich Basisklasse namens Ausrüstung mit mehreren Kindklassen von Geräten geerbt. (Dies ist nicht wirklich Code, so dass ich nicht in alle Öffentlichkeiten etc.)
Wie ich sorta erwarte, die Modellbeschreibung, wenn ich Swagger in meinem Browser laufen, gibt nur das Modell für die Geräteklasse Ich habe gegooglet, wie zu zeigen alle möglichen Modelle aber können die Antworten nicht verstehen, da sie sich nicht auf C# beziehen, oder API-Controller, die Kommentare für die Dokumentation verwenden, oder sie sind für Leute geschrieben, die das mehr verstehen als ich.
ist jemand in der Lage, ein Beispiel zu veröffentlichen, oder zeigen Sie mir ein Anfänger-Tutorial bitte, wie Sie alle möglichen Modelle swagger anzeigen. Ich musste mehrere verschiedene API-Aufrufe schreiben, um das zu umgehen, nur damit die Modelle angezeigt werden.
dank
C#, web api, swashbuckler/swagger
class equipment
{
public int id{get;set;}
public int foo{get;set;}
public int bar{get;set;}
}
class bucket : equipment
{
public int booboo{get;set;}
}
class mop : equipment
{
public int lala{get;set;}
}
// equipmentcontroller class get function
/// <summary>
/// Returns a piece of equipment.<br/>
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
[Route(@"{id:int}"), ResponseType(typeof(equipment))]
public IHttpActionResult GetMop(int id)
{
return result != null ? (IHttpActionResult)Ok(GetMop[id]) : NotFound();
}
Es ist eine schlechte Idee, Schnittstellen und Vererbung auf der Leitung offenzulegen (und eine schlechtere, um Ihre DB-Entities zu entlarven), keine Form von lose gekoppelten Serialisierer unterstützt es ohne benutzerdefinierte Hacks (z. B. wcf oder json benutzerdefinierten Typ) z. B. wie Sie denken Beschreibe es in xsd. Alle Projekte, die ich gesehen habe, die das gemacht haben, haben es letztendlich rausgeholt. – user1496062