代码段:在Visual Studio中自动完成ArgumentNullException

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了代码段:在Visual Studio中自动完成ArgumentNullException相关的知识,希望对你有一定的参考价值。

我经常写一个像这样的c#代码:

    void func(object myObject)
    {
        if (myObject == null)
        {
            throw new ArgumentNullException("myObject");
        }
        ...

如何在Visual Studio 2012中为该类型的代码编写自动完成,以便我不必一直输入这个?

答案

由于没有兴趣,我将通过发布我自己的解决方案来关闭这个问题。将以下文件放入C:Program Files (x86)Microsoft Visual Studio 11.0VC#Snippets1033Visual C#ifn.snippet就可以了:

<?xml version="1.0" encoding="utf-8" ?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
  <CodeSnippet Format="1.0.0">
    <Header>
        <Title>ifn</Title>
        <Shortcut>ifn</Shortcut>
        <Description>Code snippet for if (arg==null)</Description>
        <Author>sam green</Author>
        <SnippetTypes>
            <SnippetType>Expansion</SnippetType>
            <SnippetType>SurroundsWith</SnippetType>
        </SnippetTypes>
    </Header>
    <Snippet>
        <Declarations>
            <Literal>
                <ID>argument</ID>
                <Default>arg</Default>
                <ToolTip>Argument</ToolTip>
            </Literal>
        </Declarations>
        <Code Language="csharp"><![CDATA[if ($argument$ == null)
        {
                    throw new ArgumentException("$argument$");
        }$end$]]>
        </Code>
    </Snippet>
  </CodeSnippet>
</CodeSnippets>
另一答案

我使用自动生成和猜测我想要的参数的关键字“argnull”为此定义了一个ReSharper快捷方式。我认为,它与您的解决方案大致相同,但您不需要使用XML或放置文件。

以下是ReSharper VB.NET方法的示例:

if $VAR$ is nothing then
  throw new ArgumentNullException("$VAR$")
end if

以上是关于代码段:在Visual Studio中自动完成ArgumentNullException的主要内容,如果未能解决你的问题,请参考以下文章

智能感知和自动完成功能在Visual Studio代码中不起作用

在 Visual Studio 中刷新自动完成 (IntelliSense) 数据库

刷新Visual Studio中的自动完成(IntelliSense)数据库

在 Visual Studio 代码中格式化液体(Shopify)代码

Visual Studio Code代码自动补全无法使用

在 Visual Assist 或 Vanilla Visual Studio 中切换枚举的自动完成功能