在VisualStudio中是否有创建方法的快捷键?

28

在VisualStudio中是否有快捷键可以创建方法,就像“prop, tab”用于属性和“ctor, tab”用于构造函数那样?


1
可能是Visual Studio代码段用于方法?的重复问题。 - Farhad Jabiyev
欢迎您。但是Habib的回答也很有用。 - Farhad Jabiyev
试试 ReSharper 吧。它在 VS 中做得非常好。 - Aron
在我看来,Habib的回答更为恰当。我晚了几秒钟才发出相同的回答。 - Farhad Jabiyev
@FarhadJabiyev 是的...可能是这样。我只是不知道自从2008年以来VS能做什么,因为我总是运行Resharper。 - Aron
6个回答

25

没有代码片段来创建除Main之外的方法,但您可以执行以下操作。

输入您要创建的方法名称,传递参数,完成后,您会注意到方法名称开头有蓝色下划线。点击那个 (或者按下 Ctrl + .) ,这将为您提供创建方法的选项,例如:

enter image description here

这将生成一个类似于以下方法的函数:
private static void MySomeMethod(int a, string b)
{
    throw new NotImplementedException();
}

13

另一个创建方法(提取)的巧妙方式如下。

如果我想把某个方法的一部分移动到新的私有方法中,我将使用这种方式。

  1. 选择您想要提取的方法中的代码部分。
  2. Ctrl + R + M 或右键单击选定的代码 → 重构\提取\提取方法...

这将只创建新的私有方法,但会自动设置输入参数和输出参数。


9
请将以下代码片段保存到扩展名为'.snippet'的文件中:
  1. 将下面的代码片段保存到带有“ .snippet”扩展名的文件中
<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
    <CodeSnippet Format="1.0.0">
        <Header>
            <Title>Generate Method Stub</Title>
          <Description>Create a new method</Description>
          <Author>Anoop Simon</Author>
         <Shortcut>stub</Shortcut>
        </Header>
        <Snippet>
           <Code Language="CSharp">
          <![CDATA[public string DummyMethod(string arg1,string arg2)
          {
              return string.Empty;
          }
          ]]>
      </Code>
        </Snippet>
    </CodeSnippet>
</CodeSnippets>
  1. 打开Visual Studio
  2. 选择工具 --> 代码段管理器.. (Ctrl +K , Ctrl + B) enter image description here

  3. 导入之前保存的文件

  4. 点击OK
  5. 在Visual Studio IDE中打开任意一个C#类
  6. 输入“stub”,然后按两次TAB键。 如果您想更改快捷方式,请更新代码段文件中的值

8

请检查代码片段

sim:静态整数主方法

svm:静态void主方法


0

这里是创建自定义代码片段的指南。

您可以制作自己的代码片段,或者使用此模板:

<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
  <CodeSnippet Format="1.0.0">
    <Header>
      <Title>create new 'not implemented' method</Title>
      <Description>create new 'not implemented' method</Description>
      <Shortcut>emptymethod</Shortcut>
    </Header>
    <Snippet>
      <Code Language="CSharp">
        <![CDATA[        $access specifier$ $return type$ $methodName$($params$)
        {
            $throw new NotImplementedException()$;
        }]]>
      </Code>
      <Declarations>
        <Literal>
          <ID>access specifier</ID>
          <Default>Array</Default>
        </Literal>
        <Literal>
          <ID>return type</ID>
          <Default>returnType</Default>
        </Literal>
        <Literal>
          <ID>methodName</ID>
          <Default>methodName</Default>
        </Literal>
        <Literal>
          <ID>params</ID>
          <Default>params</Default>
        </Literal>
        <Literal>
          <ID>throw new NotImplementedException()</ID>
          <Default>throw new NotImplementedException()</Default>
        </Literal>
      </Declarations>
    </Snippet>
  </CodeSnippet>
</CodeSnippets>

在将此片段导入您的Visual Studio后,当您按下emptymethod + tab时,您将获得新的未实现方法。


-3

输入“fun”,然后按Tab键。 哒哒! 现在我需要输入更多字符,因为允许的最小字符数是30。


1
目前你的回答不够清晰,请编辑并添加更多细节,以帮助其他人理解它如何回答问题。你可以在帮助中心找到有关如何编写好答案的更多信息。 - Community

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接