Pregunta

Veo en los enlaces de MSDN como " CompareOrdinal Overloads " ;. ¿Cómo puedo escribir un enlace de este tipo en C #?

Lo intenté:

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

Pero el compilador me da una advertencia acerca de ser una referencia ambigua para el método que tiene otras sobrecargas.

(Pregunta para principiantes: ¿realmente necesito escribir esta etiqueta para vincular las sobrecargas, o es generada automáticamente por los procesadores de documentación?)

¿Fue útil?

Solución

La documentación Xml no tiene un medio para hacer referencia a todas las sobrecargas de un método.

El generador de documentación más popular para proyectos de C # es Sandcastle. Creará automáticamente un enlace a una página de lista de sobrecargas si es necesario. Por lo tanto, en una página de lista de miembros, el nombre de un método sobrecargado aparecerá solo una vez, al hacer clic en él irá a la página de lista de sobrecargas para ese método y de allí a una sobrecarga específica.

La colocación de un enlace a la página de la lista de sobrecargas en la documentación Xml requerirá un conocimiento íntimo de la herramienta externa que se está utilizando y probablemente no sea una buena idea.

Si realmente debe tener esto, entonces quizás una forma es usar un ancla con una ID formada específicamente. La mayoría de los generadores de documentos proporcionan algunos medios arcanos para el procesamiento previo o posterior de los archivos generados, y deberían brindarle la oportunidad de seleccionar estos anclajes y proporcionarles una href adecuada.

OTH, puede ser más un problema que su valor;)

Otros consejos

Para apuntar a los miembros de específicos , creo que solo coinciden con la firma:

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

Para ser honesto, no estoy seguro de cómo generar " todas las sobrecargas " enlazar; Supongo que cualquier generador sensato hizo esto automáticamente.

Usar Sandcastle es simple:

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

FullyQualifiedMyMethod es la ruta completa que necesita para alcanzar la sobrecarga, incluidos los espacios de nombres y las clases, es decir, System.Linq.Enumerable.Sum

Sin embargo, el compilador de VB emite una advertencia que indica que el atributo no se puede resolver, que se puede ignorar.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top