web-dev-qa-db-ja.com

VisualStudioでゲッターとセッターを生成する簡単な方法

VisualStudioでゲッターとセッターを生成する方法はありますか?私はしようとしています AltR、 F そして私はこれを手に入れます:

public String Denomination
{
    get { return denomination; }
    set { denomination = value; }
}

そして私が欲しいのはこれです:

public String getDenomination()
{
    return Denomination;
}

public void setDenomination(String Denomination)
{
    this.Denomination = Denomination;
}

それを行う方法はありますか?

4
Gundwane

propコードスニペットを使用して、自動プロパティを作成できます。

propと入力し、Tabを押します。次に、プロパティのタイプと名前を変更できます。

追加のロジックが必要ない単純なケースでは、バッキングフィールドは必要ありません。

8
user3907267

Visual Studioですぐに使用できる組み込みの方法はないと思いますが、その機能を追加する方法は提供されています。

あなたがする必要があるのは、これらの2つのメソッドを作成し、スニペットを%USERPROFILE%\Documents\Visual Studio 2013\Code Snippets\Visual C#\My Code Snippetsフォルダーに追加する コードスニペット を作成することです。これを行うと、スニペット名を入力してtabを押すと、探しているテキストが入力されます。

3

単なる意見ですしかし、私はJava開発から始めて、C#に切り替えたので、プロパティの大ファンではありません。

私はそれらを愛する開発者とそれらを嫌う開発者を知っていますが、たとえばあなたのチームがプロパティの代わりにゲッターとセッターを使用したい場合、このスニペットはあなたにとって興味深いかもしれません。

私は自分のニーズに合うようにプロパティを生成するものを変更しましたが、おそらくそれはあなたにもぴったりです

<?xml version="1.0" encoding="utf-8" ?>
<CodeSnippets  xmlns="http://schemas.Microsoft.com/VisualStudio/2005/CodeSnippet">
    <CodeSnippet Format="1.0.0">
        <Header>
            <Title>getset</Title>
            <Shortcut>getset</Shortcut>
            <Description>Code snippet for Getter and Setter</Description>
            <Author>bongo</Author>
            <SnippetTypes>
                <SnippetType>Expansion</SnippetType>
            </SnippetTypes>
        </Header>
        <Snippet>
            <Declarations>
                <Literal>
                    <ID>type</ID>
                    <ToolTip>object type</ToolTip>
                    <Default>int</Default>
                </Literal>
                <Literal>
                    <ID>GSName</ID>
                    <ToolTip>Getter Setter name</ToolTip>
                    <Default>MyMethod</Default>
                </Literal>
                <Literal>
                    <ID>field</ID>
                    <ToolTip>The variable backing this Getter Setter</ToolTip>
                    <Default>myVar</Default>
                </Literal>
            </Declarations>
            <Code Language="csharp"><![CDATA[private $type$ $field$;

    /// <summary>
    /// 
    /// </summary>
    /// <param name="value"></param>
    public void Set$GSName$($type$ value)
    {
        $field$ = value;
    }       

    /// <summary>
    /// 
    /// </summary>
    /// <returns></returns>
    public $type$ Get$GSName$()
    {
        return $field$;
    }
    $end$]]>
            </Code>
        </Snippet>
    </CodeSnippet>
</CodeSnippets>

scott Chamerlainが言ったように追加するか、[ツール]タブでVisual Studioのコードスニペットマネージャーを使用する場合は、getsetと入力し、tabVisual Studioで、これを生成します:

private int myVar;

/// <summary>
/// 
/// </summary>
/// <param name="value"></param>
public void SetMyMethod(int value)
{
    myVar = value;
}

/// <summary>
/// 
/// </summary>
/// <returns></returns>
public int GetMyMethod()
{
    return myVar;
}
1
Bongo