簡體   English   中英

"如何使用 Visual Studio 2005 \/ resharper 自動向文件夾、命名空間或項目中的每個文件添加“使用”語句"

[英]How do i automate adding a "using" statement to every files in a folder, namespace or project with Visual Studio 2005 / resharper

我正在使用 resharper 進行大重構,我不斷從一個文件轉到另一個文件,並在“使用”部分一遍又一遍地添加相同的命名空間

是否有向文件夾、命名空間或項目中的每個文件添加“使用”語句? 盡管有些文件不需要引用,但大多數文件都需要,因此可以節省大量時間。

我會在“查找和替換”對話框中嘗試使用正則表達式:

更換

^using System;$

using System;\nusing xxx;

這僅適用於使用System名稱空間的文件,但也許您會找到另一個常見的名稱空間或結構元素。 這樣做之后,您可以使用重新共享程序重構解決方案(/ folder)中的所有文件。 這將刪除兩倍的用法。

更新 :您是否為現有類型引入了新的名稱空間? 有一個稱為“移動”的重構功能。 它將您的類型移動到新的名稱空間並保留引用。

  • 打開ReSharper選項/語言/ C#/命名空間導入
  • 添加“應始終導入的命名空間”
  • 針對解決方案或項目運行代碼清理。 您可能只想使用“使用指令優化”模塊來創建配置文件(選項/工具/代碼清除)。

VS會為您添加它們。 當在引用的程序集中添加符號但沒有對該符號使用using語句時,您將在該符號上得到一個標記。 按Control-句點(或使用鼠標),第一個選項將為您添加using語句。

否則,您可以編寫一個VS宏來依次打開每個項目源文件並插入該語句。

我覺得值得為這個老問題添加一個答案,因為我們在 C#10 中有“全局使用指令”。 對於針對 C#10 及更高版本的較新代碼庫,它使此要求沒有實際意義。

我們現在可以將一個全局使用放在一個文件中,以便在解決方案中的任何地方都可以訪問它。

global using yournamespace

請參閱此處的文檔https://docs.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-10#global-using-directives

遇到文件時,請一一對應,按CTRL + ALT + SHIFT + F,以執行自動文件清除例程。 它僅需一秒鍾即可運行,並且可以滿足您的需求,而不僅限於系統。

不知道R#是否可以進行解決方案范圍的文件清理。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM