Ninguna de las respuestas mostradas hasta ahora funciona completamente para mí. ReSharper no convertirá la etiqueta ver en un Ctrlenlace que pueda hacer clic con un clic (p. Ej. ) a menos que se resuelva por completo.
Si el método en el OP estuviera en un espacio de nombres llamado Test
, el enlace completamente resuelto al método mostrado sería:
<see cref="M:Test.FancyClass`1.FancyMethod``1(`0)"/>
Como es posible que pueda resolver, solo debe haber un retroceso antes del número de parámetros de tipo de clase, luego dos retrocesos antes del número de parámetros de tipo de método, luego los parámetros son el parámetro indexado a cero con el número apropiado de retrocesos.
Entonces podemos ver que FancyClass
tiene un parámetro de tipo de clase, FancyMethod
tiene un parámetro de tipo y un objeto deFancyClass
parámetro de tipo y se pasará tipo de parámetro al método.
Como puede ver más claramente en este ejemplo:
namespace Test
{
public class FancyClass<A, B>
{
public void FancyMethod<C, D, E>(A a, B b, C c, D d, E e) { }
}
}
El enlace se convierte en:
M:Test.FancyClass`2.FancyMethod``3(`0,`1,``0,``1,``2)
O "Clase con dos parámetros de tipo, que tiene un método con tres parámetros de tipo, donde los parámetros del método son ClassType1
, ClassType2
, MethodType1
, MethodType2
,MethodType3
"
Como nota adicional, no encontré esto documentado en ninguna parte y no soy un genio, el compilador me contó todo esto. Todo lo que tiene que hacer es crear un proyecto de prueba, habilitar la documentación XML , luego insertar el código para el que desea elaborar un enlace y poner el comienzo de un comentario de documento XML en él ( ///
):
namespace Test
{
public class FancyClass<T>
{
///
public string FancyMethod<K>(T value) { return "something fancy"; }
}
public class Test
{
public static void Main(string[] args) { }
}
}
Luego construya su proyecto, y la documentación XML resultante incluye el enlace en el elemento doc
-> members
-> member
debajo del atributo name
:
<?xml version="1.0"?>
<doc>
<assembly>
<name>Test</name>
</assembly>
<members>
<member name="M:Test.FancyClass`1.FancyMethod``1(`0)">
</member>
</members>
</doc>