回答
而不是使用CTRL +ķ,X你也可以只輸入prop
然後單擊標籤兩次
我的機器上再沒有安裝Visual Studio(我正在使用Linux),但我確實記得有一個嚮導隱藏在可以訪問類構建器的菜單中的某處。
使用此嚮導,您可以定義所有類的詳細信息,包括方法和屬性。如果我沒記錯的話,有一個選項可以讓VS自動爲你創建setter和getters。
我知道這很含糊,但檢查一下,你可能會發現它。
通過生成,你的意思是自動生成?如果這不是你的意思:
Visual Studio 2008中有這個最簡單的實現:
public PropertyType PropertyName { get; set; }
在此創建了一個隱含的實例變量的背景,你的財產是存儲和檢索。
但是如果你希望把更多的邏輯在你的屬性,你必須有一個實例變量是:
private PropertyType _property;
public PropertyType PropertyName
{
get
{
//logic here
return _property;
}
set
{
//logic here
_property = value;
}
}
的Visual Studio的早期版本一直用這種方法,草書也。
C#中的標準是不是在成員名稱`property_`之後而不是`_property`之前的較低破折號? – Julen 2011-03-30 14:00:54
@Julen - 我一直都看到_property約定。 – 2012-11-20 03:39:32
如果您正在使用Visual Studio 2005及更高版本,則可以使用insert snippet命令快速創建setter/getter。右鍵點擊代碼點擊插入片段(Ctrl + k,x),然後從列表中選擇「prop」。希望這可以幫助。
Visual Studio中還有一個特點,將產生一個私人變量屬性。
如果你右鍵點擊一個變量,在彈出的上下文菜單中點擊「Refactor」項目。然後選擇封裝字段。這將爲變量創建一個getter/setter屬性。
我並不太喜歡這種技術,因爲如果你必須創建大量的getter/setter,它有點尷尬,並且它將屬性直接放在私有字段的下面,這會讓我感到困惑因爲我通常會將所有私人字段組合在一起,而且這個Visual Studio功能會打亂我班的格式。
除了'prop'片段和自動屬性之外,還有一個重構選項可讓您選擇現有字段並通過屬性公開它。另外,如果你不喜歡'道具'的實現,你可以創建自己的片段。此外,像resharper這樣的第三方重構工具將爲您提供更多功能,並使創建更高級的片段變得更加容易。如果你負擔得起,我會推薦Resharper。
http://msdn.microsoft.com/en-us/library/f7d3wz0k(VS.80).aspx http://www.jetbrains.com/
如果您使用ReSharper的,進入ReSharper的菜單 - >代碼 - >生成...(或按Alt鍵+宏的周邊類中)和你會得到所有生成getter和/或制定者你能想到的:-)
你也可以使用「propfull」的選項,打TAB兩次,變量和物業使用get和set將會產生。
使用關鍵字propfull
。
它會生成屬性和變量
我知道這比太陽還年長,但我想我會張貼這個作爲我的答案,因爲它就像這樣做。
我所做的是創建我自己的片段,只添加{get; set;}
。我只是因爲我發現prop > tab
笨重。
<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets
xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<CodeSnippet Format="1.0.0">
<Header>
<Title>get set</Title>
<Shortcut>get</Shortcut>
</Header>
<Snippet>
<Code Language="CSharp">
<![CDATA[{get; set;}]]>
</Code>
</Snippet>
</CodeSnippet>
有了這個,你手動鍵入PropType和PROPNAME,然後鍵入get > tab
,它會添加獲取設置。它沒什麼神奇的,但是由於我傾向於首先鍵入我的訪問修飾符,所以我最好完成名稱和類型。
我使用Visual Studio 2013專業版。
- 將光標放在實例變量的行處。
- 按組合的鍵按Ctrl +[R,按Ctrl +Ë或點擊鼠標右鍵,選擇右鍵菜單
Refactor \ Encapsulate Field...
然後按OK
。
- 在
Preview Reference Changes - Encapsulate Field
diaglog,按下按鈕Apply
。
- 這是結果:
也地方光標選擇屬性,使用菜單編輯\重構\封裝字段...
- 其他信息: 自C#3。0(2007年11月19日),我們可以使用Auto-Implemented Properties(這僅僅是syntactic sugar)
和
private int productID;
public int ProductID
{
get { return productID; }
set { productID = value; }
}
成爲
public int ProductID { get; set; }
在Visual Studio Community Edition的2015年,你可以選擇所有您想要的字段,然後按ctrl + .
自動生成屬性。你必須選擇是否要使用屬性而不是字段。
代表visual studio工具我們可以很容易地使用在線工具 調用c#屬性來調用。 c# propery generator.
你只是簡單地按下Alt鍵+宏在機器人工作室聲明變量後,您將獲得在生成代碼的getter和setter。
- 1. 在Android Studio中自動生成getter和setter
- 2. 如何自動生成多個getter/setter方法或訪問器在Visual Studio
- 3. 如何爲jmsserializer實體生成getter setter
- 4. 如何生成動態屬性getter/setter?
- 5. 爲內部類生成getter和setter。 Eclipse
- 6. 如何停止Visual Studio在我的UserControl中生成Setter調用?
- 7. getter和setter在
- 8. Eclipse生成包中的所有getter setter
- 9. getter和setter如何在PHP中工作
- 10. 如何測試setter和getter?
- 11. Synchronzied Getter和Setter
- 12. PHP Komodo getter/setter自動生成
- 13. 在Eclipse中爲getter和setter自動生成註釋
- 14. 有沒有辦法在Eclipse中自動生成getter和setter?
- 15. 在Enterprise Architect中爲PHP生成getter和setter
- 16. Intellij插件生成getter/setter,hashcode/equals,toString
- 17. getter和setter C++
- 18. C++ getter和setter替代品調用堆棧上的Visual Studio
- 19. Angular 2 Setter和Getter
- 20. Getter和Setter方法
- 21. setter和getter方法
- 22. 在使用Ant構建時,龍目不能生成setter和getter
- 23. 的JUnit getter和setter
- 24. Getter和setter問題
- 25. getter和setter問題
- 26. Setter和getter消息
- 27. 使用getter和setter
- 28. getter和setter風格
- 29. setter和getter公約
- 30. getter和setter錯誤
不要忘記「propg」+製表符,它可以產生相同的結果,但可以使用私人setter。 – 2009-11-17 09:31:57
完全漂亮。謝謝! – Stumblor 2013-09-20 13:01:33
請參閱https://msdn.microsoft.com/en-us/library/z41h7fat.aspx以獲取更多有用的Visual C#代碼片段。 – Titus 2015-06-22 10:04:21