[英]Finding all the places a variable has been set?
通常在使用 VS2010 Ultimate 進行開發時,我想檢查代碼庫中的哪個值被設置(所以這是一個賦值)。
有沒有辦法使用 VS2010 Ultimate 或 3rd 方調試工具來獲取代碼庫中設置或獲取變量的所有位置?
無論如何,這最終將在 VS2019 中得到原生支持。
特別是“查找所有引用”窗口有一個新的“種類”列,可以過濾“寫入”引用:
添加此功能的特定 GitHub PR 計划包含在 Visual Studio 2019 Preview 2 (16.0.P2) https://github.com/dotnet/roslyn/issues/22545
VS2019 的完整版本是為 2019 年第一季度制定的路線圖。
您可以將 CTRL+SHIFT+F 與正則表達式一起使用:MyVariable[ \\t\\r\\n\\v\\f]*=[^=],這將在“=”符號左側搜索“myVariable”。
是的,ReSharper 5 中提供了Value Origins功能。
使用 Ctrl+Shift+F 搜索整個解決方案或使用某些人建議的 Find Usages 並不能回答 OP 的問題 - 它將顯示變量的每個用法,而不僅僅是賦值,並且快速瀏覽該列表可能既乏味又耗時。
這是使用 Visual Studio 的更強大的解決方案,無需 3rd 方工具:
1. 對於除 Post-/Pre-fix Increment 和 Shift 分配以外的所有分配:
(^|[^\w.])MyVariable\s*([\+\-\*/%&|\^]|)=[\w\s]
2. 對於 Post-/Pre-fix Increment 和 Shift 分配:
((^|[^\w.])MyVariable\s*(\+\+|--)|(\+\+|--)\s*MyVariable[^\w.]|(^|[^\w.])MyVariable\s*(<<|>>)=)
3. 對於輸出/參考參數(屬性不適用):
(^|[^\w.])(out|ref)\s+MyVariable[^\w.]
警告:
您可以使用命令“查找引用”(Ctrl + K、Ctrl + R)
正如上面的 Daniel Pratt 所問的那樣,我不確定您的意思是屬性、變量還是其他東西。 但是,我經常使用的一個相關功能是“查找用法”,可以通過右鍵單擊方法、類、成員等來訪問它。它不僅可以找到分配,還可以找到所有用途 - 但是也許這可以縮小范圍在分配后手動篩選。
有時舊的技術會成為最好的。 也許您可以使用 CTRL + Shift + F 搜索整個解決方案
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.