在Visual Studio中生成Getter和Setter的简单方法

本文关键字:Setter 简单 方法 Getter Visual Studio | 更新日期: 2023-09-27 18:20:27

有没有一种方法可以在Visual Studio中生成getter和setter?我正在尝试使用Alt+R1F

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

我想要的是:

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

有办法做到这一点吗?

在Visual Studio中生成Getter和Setter的简单方法

您可以使用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中按选项卡它将生成以下内容:

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