8 Stimmen

Wie man den Typ in einem XML-Kommentar <return> angibt

In meinem C# XML-Kommentar würde ich gerne im Kommentar angeben (ich benutze Sandcastle), welcher Typ zurückgegeben wird, aber ich weiß nicht, wie das geht.

Pseudo Beispiel:

///
///Dient als Hash-Funktion für einen bestimmten Typ.
///
///
///Ein Hash-Code für das aktuelle Objekt.
///
public virtual int GetHashCode(){...}

Das oben genannte Beispiel ist eine Nachbildung dessen, was ich vermute, um Sandcastle mitzuteilen, wie der Rückgabetyp angegeben werden soll, der in der Syntax-Sektion der Dokumentation dokumentiert ist - leider funktioniert es nicht so.

Zur Klarstellung: Hier ist ein Screenshot der MSDN-Dokumentation der Methode GetHastCode(), der den Rückgabetyp zeigt, den ich anstrebe.

Müssen wir den Typ manuell angeben oder können wir einen Typ angeben (ähnlich wie im Beispiel) und Sandcastle bestimmen lassen, wie der Output angezeigt/formatiert werden soll - ähnlich wie Sandcastle automatisch den Typ für Parameter über das -Tag anzeigt/formatiert.

Bildbeschreibung hier eingeben

6voto

Jon Skeet Punkte 1325502

Sie sollten es nicht in der XML-Dokumentation angeben müssen - schließlich wäre das überflüssig, da es bereits in der Methodendeklaration steht.

Ich vermute, es handelt sich um eine Frage der Anpassung des Sandcastle-Stils, wenn Sie es wirklich wollen - aber finden Sie es besonders nützlich? Es ist nicht so, als ob Benutzer nicht einfach auf den Rückgabetyp in der Methodensignatur klicken könnten. (Zumindest scheint das für den Prototypenstil in SHFB der Fall zu sein. Siehe die Dokumentation zu Noda Time für ein Beispiel, wie das aussieht.)

In MSDN haben dann Methodensignaturen keine Links (zumindest nicht in Chrome; ich weiß nicht, ob es in IE anders ist), aber persönlich würde ich es vorziehen, es in der Signatur stattdessen zu haben, anstatt die eigentliche Dokumentation zu überfrachten.

3voto

Jed Punkte 10149

Dieser Beitrag (Juli 2011) enthält eine Antwort von Eric Woodruff (SHFB-Autor) zu dem Problem, dass der Rückgabetyp nicht innerhalb des -Tags angezeigt wird:

Sandcastle rendert die Typinformationen für die Rückgabeinformation nicht, und ich glaube, es hat dies noch nie getan. Vorausgesetzt, die Informationen befinden sich in der Reflektionsinformationsdatei, könnten die XSL-Transformationen geändert werden, um sie anzuzeigen. Ich habe derzeit keine Zeit, um es zu überprüfen, aber möglicherweise kann ich zu einem späteren Zeitpunkt herausfinden, ob dies möglich ist.

Ich nehme an, die offizielle Antwort auf meinen Beitrag lautet: Sandcastle hat keine automatische Möglichkeit, den Rückgabetyp anzugeben, aber wie Skeet bereits angedeutet hat, könnte es möglich sein, dies durch Änderung der XSL-Transformationen zu erreichen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X