當我們必須使用DebuggerDisplay屬性?使用這個的優點是什麼?當我們必須使用DebuggerDisplay屬性?使用這個的優點是什麼?
2
A
回答
5
這個article解釋得很好。 您可以在您的類上使用此屬性以在調試時顯示更有意義的文本。例如: 假設你有一個下面的類:
[DebuggerDisplay("x = {x} y = {y}")]
MyClass
{
private int x;
private int y;
...
}
一旦你在Visual Studio調試器調試MyClass的實例,你在它懸停(或把它放在監視窗口,你再也看不到"MyClass"
還有而是"x = 4 y = 5"
(假設該實例的x和y目前有這個值。這僅僅是你可以做更多的文章解釋了它的一個例子。
1
的DebuggerDisplay屬性設置如何類或字段時顯示您在調試器中查看類或字段。
例如,您可以讓調試器實際顯示對象正在存儲的地址,而不是看到變量類型爲Address。
它只是使調試更容易一點!調試更容易 - 程序員的生活變得更加愉快! ;-)
2
要回答你的問題,當你應該使用它時,我的建議是每個類都是具有數據屬性的業務對象。尤其重要的是任何集合中的類。既然是一個集合裏面,當你擴大成果類查看您只能看到完全限定的類型名稱和將要展開每個單獨的結果,看看它是哪一個項目。
但是當你使用DebuggerDisplay屬性你可以看到屬性,你認爲在調試代碼時包含集合快速監視窗口中的結果視圖最重要的權利。
相關問題
- 1. 爲什麼我們必須在hadoop中使用多個節點?
- 2. 我必須使用「這個」。在NodeJs中使用「對象」屬性?
- 3. 是否必須使用flags屬性?
- 4. 什麼是PostgreSQL函數,什麼時候我必須使用它們?
- 5. 使用類別的優點和缺點是什麼?爲什麼當我們需要他們?
- 6. 爲什麼我必須使用-lstdC++ fs?
- 7. 我必須使用什麼trustlevel?
- 8. 爲什麼我必須使用this.canvas?
- 9. 爲什麼我必須使用Sobel Operator?
- 10. Zend_Db_Table_Row:爲什麼我必須使用createRow()?
- 11. 這必須用於引用bindadle屬性
- 12. 當我必須使用Intents時,什麼是createChooser?我能用這種方法做什麼?
- 13. 爲什麼我們必須爲@SuppressWarnings(「unchecked」)使用中間變量?
- 14. 爲什麼我們必須使用$ this-> operator? | PHP
- 15. 對於這個頁面,爲什麼我必須使用display:inline-block而不是display:inline?
- 16. 爲什麼這個alignment屬性必須在typedef中指定?
- 17. 我們在使用會話時是否必須使用mysql_real_escape_string()?
- 18. 使用問題,爲什麼我必須使用使用global :: MyName.SubName?
- 19. 爲什麼我必須在這段代碼中使用(flush)?
- 20. Android:爲什麼我必須使用runOnUIThread()在這裏?
- 21. 爲什麼我必須在這裏使用重載?
- 22. 目標屬性必須是依賴屬性 - 爲什麼?
- 23. SafeValue必須使用[屬性] =結合:
- 24. 屬性值必須使用Contentful空間
- 25. 什麼是我們必須調用dispose託管代碼
- 26. C#:什麼時候使用waitHandle,當我們可以使用threadPool屬性
- 27. 爲什麼我必須使用的,而不是「對象」
- 28. 我必須使用jsonp的原因是什麼?
- 29. 我可能必須使用的API類是什麼?
- 30. 當我們要使用用戶輸入時,爲什麼我們必須清除ax註冊表?