ReSharperがすべてのクラスを実行して、未使用の使用を削除できるかどうか疑問に思っていますか?見ましたが、R#4.5にはこのようなオプションがありません。誰かがこれをResharperで単一のクラスの使用を削除できること以外に見ましたか?
プロジェクト全体のクリーンアップはReSharper 5の新機能だと思います。
私はそれを取り戻します。機能はReSharper 4.5にあります。ソリューションを右クリックすると、クリーンアップコード...項目が表示され、クリーンアッププロファイルをソリューションに適用できます。プロファイルでusing
ディレクティブを調整するだけの場合は、ReSharperオプション内のコードクリーンアップノードから新しいクリーンアッププロファイルを作成できます。
Resharper 9以降では、usingブロックをクリーンアップするときに「ソリューション内」スコープを選択するだけで済みます。
私がここで見つけた別の方法もあり、マクロを使用しています。
手順1:ツールからVisual Studioで新しいマクロを作成する|マクロメニュー。
ステップ2:以下のコードをモジュールに貼り付けて保存します
Public Module Module1
Sub OrganizeSolution()
Dim sol As Solution = DTE.Solution
For i As Integer = 1 To sol.Projects.Count
OrganizeProject(sol.Projects.Item(i))
Next
End Sub
Private Sub OrganizeProject(ByVal proj As Project)
For i As Integer = 1 To proj.ProjectItems.Count
OrganizeProjectItem(proj.ProjectItems.Item(i))
Next
End Sub
Private Sub OrganizeProjectItem(ByVal projectItem As ProjectItem)
Dim fileIsOpen As Boolean = False
If projectItem.Kind = Constants.vsProjectItemKindPhysicalFile Then
'If this is a c# file
If projectItem.Name.LastIndexOf(".cs") = projectItem.Name.Length - 3 Then
'Set flag to true if file is already open
fileIsOpen = projectItem.IsOpen
Dim window As Window = projectItem.Open(Constants.vsViewKindCode)
window.Activate()
projectItem.Document.DTE.ExecuteCommand("Edit.RemoveAndSort")
'Only close the file if it was not already open
If Not fileIsOpen Then
window.Close(vsSaveChanges.vsSaveChangesYes)
End If
End If
End If
'Be sure to apply RemoveAndSort on all of the ProjectItems.
If Not projectItem.ProjectItems Is Nothing Then
For i As Integer = 1 To projectItem.ProjectItems.Count
OrganizeProjectItem(projectItem.ProjectItems.Item(i))
Next
End If
'Apply RemoveAndSort on a SubProject if it exists.
If Not projectItem.SubProject Is Nothing Then
OrganizeProject(projectItem.SubProject)
End If
End Sub
End Module
ステップ3:必要なソリューションでマクロを実行します。楽しい :)