在Visual Studio中生成Getter和Setter的简单方法
本文关键字:Setter 简单 方法 Getter Visual Studio | 更新日期: 2023-09-27 18:20:27
有没有一种方法可以在Visual Studio中生成getter和setter?我正在尝试使用Alt+R,1F 我想要的是: 有办法做到这一点吗?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中按选项卡它将生成以下内容:
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;
}