如何从 Intellisense 重命名方法名称?

How to rename a method name from Intellisense?

有人知道怎么做吗?我正在尝试创建一种方法,让智能感知显示另一个名称,而不是您为该方法指定的名称。示例:

代码如下所示:

Public Shared Sub Anything(ByVal blablabla....)
    (...)
End Sub

我想自动完成 VisualStudio 菜单,如下所示:

Async
Alalala
Anymethod
Anything   - Like these
Basic

鼠标悬停时:

而不是...

Public Shared Sub Namespace.Anything(ByVal blablablbal....)
This is the summary...

放上去:

Anything <expression>
This is the summary...

-或- 子任何东西 这是摘要...

有什么想法吗?谢谢...

我相信你说的是 XML Comments。没有评论:

有评论:

当您到达每个参数时,Intellisense 还会显示参数信息:

太棒了,希望我的回答不会太含糊。无论哪种方式,我都乐意帮助您解决问题。

基本上 - 您必须覆盖 Intellisense 使用的 XML 文档,以便将新的 MethodName 映射到程序集中的不同名称的方法。


Intellisense 使用 XML 骨架来定义所见内容的不同属性。该骨架通常看起来像这样:

<CodeElement type="Function">
  <Template>
    <summary/>
    <param/>
    <returns/>
    <remarks/>
  </Template>
  <CompletionList>
    <exception cref=""/>
    <include file="" path=""/>
    <param name=""/>
    <remarks/>
    <returns/>
    <summary/>
  </CompletionList>
</CodeElement>

您可以使用此模板生成您要查找的智能感知数据。在现实生活中,这看起来像这样:

''' <summary>
'''
''' </summary>
''' <param name="str"></praram>
''' <returns></returns>
''' <remarks></remarks>
    Function Anything(ByVal str As String) As String
      Try
    ...

现在,此模板可编辑 Visual Basic 编译器为您的程序集生成一个 XML 文档,其中包含代码中定义的所有 XML 注释。编译器还将解析 cref、permission 和 name 属性中使用的符号,以及 include 元素中的文件引用。 生成的文件不会分层显示您的评论成员。相反,它是一个平面列表。它为每个定义包含一个唯一的 ID 字符串,允许将注释映射回它们在代码中的定义(参见下面的代码片段)。 在本例中,字符串为 M:Namespace.Anything(System.String)M代表methodNamespace指定pathSystem.String参数类型。

在这里您可以覆盖 INTELLISENSE 看到的方法的名称,而不影响实际的方法本身。

<?xml version="1.0" ?>
<doc>
<assembly>
<name>AnyLib</name>
</assembly>
<members>
...
<member name="M:Namespace.Anything(System.String)">
  <summary>Does something</summary>
  <param name="str">str to pass into method</param>
  <returns>A string</returns>
</member>
...
</members>
</doc>

您可以使用命令行编译器或通过 Visual Studio 界面生成 XML 文档文件。如果您使用命令行编译器进行编译,请使用选项 /doc 或 /doc+。这将生成一个 XML 文件,其名称和路径与程序集相同。要指定不同的文件名,请使用 /doc:file。 如果您使用的是 Visual Studio 界面,则有一个设置可以控制是否生成 XML 文档文件。要设置它,请在解决方案资源管理器中双击我的项目以打开项目设计器。导航到“编译”选项卡。在 window 的底部找到 "Generate XML documentation file",并确保它被选中。默认情况下,此设置处于启用状态。它使用与程序集相同的名称和路径生成一个 XML 文件

简而言之 - 是的,这是可能的,但非常麻烦并且很难重新使用您的代码。检查此 link 以获得更详细的概述: https://msdn.microsoft.com/en-us/magazine/dd722812.aspx