Ich habe eine Frage zu ASP.NET Web API HelpPages.
Normalerweise kann HelpPages die WebAPI durch XMLDocumentation erzeugen Beispielcode:
%Vor%Dies kann erfolgreich wie folgt generiert werden:
%Vor%Wenn ich jedoch einen generischen Basis-Controller verwende, wird das API-Dokument nicht erzeugt.
Beispiel:
%Vor%Wenn ich den Code im zweiten Abschnitt verwende, kann HelpPages das API-Dokument generieren, generiert aber nicht die API-Annotation. Der Unterschied zwischen meinen beiden Beispielen ist nur zweiter Abschnitt Code einen generischen Typ verwenden.
%Vor% In der Methode Do()
wird die Annotation nicht im Vergleich zum ersten
Gibt es eine Lösung, um diese Probleme zu beheben?
Ich konnte das lösen, indem ich einen Code in XmlDocumentationProvider
anpasste.
Die ursprüngliche Implementierung von XmlDocumentationProvider.GetTypeName(Type)
ist die folgende:
Ich weiß nicht warum, aber sie versuchen, den Typnamen für die XML-Suche so zu erstellen, dass sie die eigentlichen generischen Attribute und nicht den generischen Typnamen selbst enthält (z. B. erstellen sie Nullable {bool} statt Nullable ' 1). Nur der generische Name selbst ist in der XML-Datei definiert.
Eine einfache Änderung am Code bewirkt, dass die Dokumentation für die generische Klasse richtig benannt / referenziert wird:
%Vor%Nachdem diese Änderung vorgenommen wurde, wurden die Annotationen für Generiktypen korrekt angezeigt, und für mich hat dies auch nichts anderes verändert.
Tags und Links asp.net-web-api c# asp.net-web-api-helppages