如何在a<;另请参见>;用C#标记?

如何在a<;另请参见>;用C#标记?,c#,xml-documentation,C#,Xml Documentation,我在MSDN中看到了诸如“CompareOrdinal重载”之类的链接。我怎样才能用C写这样的链接 我试过: <seealso cref="MyMethod">MyMethod Overloads</seealso> MyMethod重载 但是编译器给了我一个警告:对于具有其他重载的方法,它是一个不明确的引用 (初学者问题:我真的需要编写此标记来链接到重载,还是由文档处理程序自动生成?要针对特定成员,我相信您只需匹配签名即可: /// <seealso cref

我在MSDN中看到了诸如“CompareOrdinal重载”之类的链接。我怎样才能用C写这样的链接

我试过:

<seealso cref="MyMethod">MyMethod Overloads</seealso>
MyMethod重载
但是编译器给了我一个警告:对于具有其他重载的方法,它是一个不明确的引用

(初学者问题:我真的需要编写此标记来链接到重载,还是由文档处理程序自动生成?

要针对特定成员,我相信您只需匹配签名即可:

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

///Xml文档没有引用方法的所有重载的方法

C#项目最流行的文档生成器是Sandcastle。如有必要,它将自动创建指向重载列表页面的链接。因此,在成员列表页面中,重载方法的名称只会出现一次,单击它会将您导航到该方法的重载列表页面,并从该页面导航到特定重载

在Xml文档中放置到重载列表页面的链接需要熟悉所使用的外部工具,这可能不是一个好主意

如果你真的必须这样做,那么也许有一种方法是使用一个具有特定格式ID的锚。大多数文档生成器提供一些神秘的方法来预处理或后处理生成的文件,应该让你有机会选择这些锚,并为它们提供适当的href


哦,这可能比它的价值更麻烦;)

使用Sandcastle很简单:

<seealso cref="overloads:FullyQualifiedMyMethod">MyMethod Overloads</seealso>
MyMethod重载
FullyQualifiedMyMethod是达到重载所需的完整路径,包括名称空间和类,即:System.Linq.Enumerable.Sum


但是,VB编译器发出警告,表示无法解析该属性,可以忽略该属性。

谢谢。你用的发电机是自动运行的吗?我实际上并不使用发电机;xml本身适合我的使用(intellisense和reflector都使用它)。我通常不需要独立的文档。Sandcastle的行为对我来说应该足够了。感谢您提供的信息。使用SHFB 2014.5.31.0进行测试表明前缀必须是
o:
,而不是
重载:
。并且C#编译器(针对lang 5.0版进行测试)在使用
o:
时不会发出警告,因此可能这是正确的方法。使用see(而不是see)进行了尝试,但一点运气都没有。重载:发出编译器警告,SHFB 14.5.31将忽略该警告。也尝试了o:和M:编译器是可以的,但是SHFB忽略了它们。我想说这应该是可以接受的答案,但是OP没有指定Sandcastle,所以,嗯。。。也许不是。仍然非常有用+1。在引用重载页面时遇到问题,但最终我找到了正确的语法:对我来说有效的是使用了一个大的“O”,即方法的全名,并且没有括号,如:
链接名