プロジェクトやソリューション全体の未使用の名前空間を一度に削除する
2023-08-30 02:47:08
質問
ファイル単位でできるのは知っています。
プロジェクト内のすべてのファイルに対して、1つのステップでこれを行う方法はありますか?
どのように解決するのですか?
ステートメントを使用するということですか?まず、一般的に、スペースを取る以外に害はないことに注意してください。 次のようなツール ReSharper のようなツールは、これを行うための自動化されたトリックを提供します。 のリンクがありました。 が少し前にありました。それは、煮詰まります。
- ツール -> マクロ -> マクロ IDE に移動します...
- プロジェクトエクスプローラで、追加 -> モジュールの追加...(名前を入れてください。私はOrganiseUsingsを使いました)
- を以下のコードで貼り付けます。
- ファイル -> MyMacros を保存して終了します。
ここで、ツールバーを右クリックして、[カスタマイズ] を選択します。- をクリックすると、MyMacros.OrganiseUsings.RemoveAndSortAll が見つかるはずです。これを手近な場所 (おそらくツール メニュー。配置後に名前を変更したい場合もあります) にドラッグしてください。
このオプションを使用して、ソリューション全体に対して Remove and Sort コマンドを実行できるようになりました。大きな時間の節約になります。
コード ========
Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports System.Diagnostics
Public Module OrganiseUsings
Public Sub RemoveAndSortAll()
On Error Resume Next
Dim sol As Solution = DTE.Solution
For i As Integer = 1 To sol.Projects.Count
Dim proj As Project = sol.Projects.Item(i)
For j As Integer = 1 To proj.ProjectItems.Count
RemoveAndSortSome(proj.ProjectItems.Item(j))
Next
Next
End Sub
Private Sub RemoveAndSortSome(ByVal projectItem As ProjectItem)
On Error Resume Next
If projectItem.Kind = Constants.vsProjectItemKindPhysicalFile Then
If projectItem.Name.LastIndexOf(".cs") = projectItem.Name.Length - 3 Then
Dim window As Window = projectItem.Open(Constants.vsViewKindCode)
window.Activate()
projectItem.Document.DTE.ExecuteCommand("Edit.RemoveAndSort")
window.Close(vsSaveChanges.vsSaveChangesYes)
End If
End If
For i As Integer = 1 To projectItem.ProjectItems.Count
RemoveAndSortSome(projectItem.ProjectItems.Item(i))
Next
End Sub
End Module
関連
-
[解決済み】「The breakpoint will not currently be hit」を改善するには?このドキュメントにはシンボルが読み込まれていません。" という警告はどうすれば改善されますか?
-
[解決済み] ディープクローンオブジェクト
-
[解決済み] 複数の例外を一度にキャッチする?
-
[解決済み] C#でenumからint値を取得する
-
[解決済み] IDisposable インターフェースの正しい使用法
-
[解決済み] C#がforeachで変数を再利用するのは理由があるのか?
-
[解決済み] 型チェック:typeof、GetType、is?
-
[解決済み] LINQのGroup by
-
[解決済み] あるコンストラクタを別のコンストラクタから呼び出す
-
[解決済み】大文字・小文字を区別しない「Contains(string)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】エラー。「戻り値を変更できません」 C#
-
[解決済み】コンパイルエラー「未割り当てのローカル変数を使用しています」が発生したのはなぜですか?
-
[解決済み】C#で四捨五入する方法
-
[解決済み] 保護レベルによりアクセス不能になりました。
-
[解決済み】リソースの読み込みに失敗した:ステータス500(内部サーバーエラー)のサーバーの応答)
-
[解決済み】Visual studio 2019がデバッグ時にフリーズする件
-
[解決済み】Swashbuckle/Swagger + ASP.Net Core: "Failed to load API definition" (API定義の読み込みに失敗しました
-
[解決済み】Linq 構文 - 複数列の選択
-
[解決済み】エラー「必要なフォーマルパラメータに対応する引数が与えられていない」を解決する?
-
[解決済み】スレッド終了またはアプリケーションの要求により、I/O操作が中断されました。