簡體   English   中英

在Visual Studio中生成Getter和Setter的簡便方法

[英]Easy way to generate Getters and Setters in Visual Studio

有沒有辦法在Visual Studio中生成getter和setter? 我正在嘗試用Alt + RF和我得到這個:

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

我想要的是這個:

public String getDenomination()
{
    return Denomination;
}

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

有沒有辦法做到這一點?

您可以使用prop代碼段來創建自動屬性。

鍵入prop ,然后按Tab 然后,您可以更改屬性的類型和名稱。

在簡單的情況下,不需要額外的邏輯,就不需要支持字段。

我不認為有一種內置的方法可以使用Visual Studio開箱即用,但它們確實提供了添加該功能的方法。

您需要做的是創建一個代碼片段 ,創建這兩種方法並將片段添加到%USERPROFILE%\\Documents\\Visual Studio 2013\\Code Snippets\\Visual C#\\My Code Snippets文件夾中。 完成后,您將能夠在“ tab鍵入代碼段名稱,它將填寫您要查找的文本。

它只是一個意見,但我不是一個很大的屬性粉絲,因為我開始java開發,然后切換到C#。

我知道喜歡他們的開發人員,我知道有些人討厭他們,但如果你的團隊想要使用getter和setter而不是屬性,那么這個片段可能會讓你感興趣。

我更改了生成屬性以滿足我的需求的那個,但也許它也適合你

<?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 ,然后在Visual Studio中按Tab鍵,它將生成:

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;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM