Frage

Ich sehe in MSDN Links wie "CompareOrdinal Überlastungen". Wie kann ich schreiben, eine solche Verbindung in C #?

Ich habe versucht:

<seealso cref="MyMethod">MyMethod Overloads</seealso>

Aber der Compiler gibt mir eine Warnung über eine mehrdeutige Referenz für das Verfahren ist, die anderen Überlastungen hat.

(Anfänger Frage: muss ich eigentlich diesen Tag schreiben, um die Überlastung zu verknüpfen, oder wird sie automatisch durch Dokumentation Prozessoren generiert)

War es hilfreich?

Lösung

XML-Dokumentation hat keine Mittel, um alle Überlastungen ein Verfahren zu verweisen.

Die beliebtesten Dokumentations-Generator für C # Projekte ist Sandcastle. Es wird automatisch eine Verbindung zu einer Überlastung Listenseite bei Bedarf erstellen. Daher wird in einer Seite Mitglieder Liste den Namen einer überladenen Methode nur einmal erscheint, klicken Sie es auf die Liste der Überlastungen Seite für diese Methode navigieren und von dort zu einer bestimmten Überlast.

einen Link auf die Überlastungen Listenseite in XML-Dokumentation platzieren würde intime Kenntnis des externen Werkzeugs erfordert verwendet wird und wahrscheinlich keine gute Idee.

Wenn Sie wirklich diese müssen dann vielleicht ein Weg ist, einen Anker mit einer specificaly gebildet ID zu verwenden. Die meisten Dokumente Generatoren bieten einige obskuren Mittel vor oder nach Verarbeitung erzeugten Dateien und sollen Ihnen die Möglichkeit geben, diese Anker herausgreifen und für sie eine geeignete href zu liefern.

OTH, kann es mehr Mühe als sein Wert sein;)

Andere Tipps

Ziel spezifische Mitglieder, ich glaube, Sie nur die Signatur entsprechen:

/// <seealso cref="Foo(int)"/>
static void Foo() { }
/// <seealso cref="Foo()"/>
/// <seealso cref="Foo(float)"/> <------ complains
static void Foo(int a) { }

Um ehrlich zu sein, ich bin nicht sicher, wie ein „alle Überlastungen“ Link zu erzeugen; Ich würde davon ausgehen, dass jeder vernünftige Generator tat dies automatisch.

Mit Sandcastle ist einfach:

<seealso cref="overloads:FullyQualifiedMyMethod">MyMethod Overloads</seealso>

FullyQualifiedMyMethod ist die komplette Route, die Sie um die Überlastung zu erreichen benötigen, einschließlich Namespaces und Klassen, d.h .: System.Linq.Enumerable.Sum

Allerdings VB-Compiler gibt eine Warnung aus dem Attribut sagen, kann nicht aufgelöst werden, die ignoriert werden kann.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top