31

「未使用の参照を削除する (!= "using") 」という質問に関連して、未使用のクラス、構造体、デリゲートなどを Visual Studio ソリューションから削除するためのツールがあるかどうかを知りたいです。

シナリオ:

何千もの次のもので構成される整理されていない Visual Studio ソリューションがあります。

  • ネイティブ メソッドのインポート
  • 構造物
  • デリゲート
  • 列挙

[すべての参照を検索] をクリックして各ファイルを調べて、コードがどこかで使用されているかどうかを判断するのではなく、冗長なコード ファイルを簡単に削除できるメカニズムはありますか?

例:

//This class contains a method called getRandomValue which returns type RANDOM
public class NativeMethods
{
    [DllImport("random.dll")]
    public static extern RANDOM getRandomValue();
}

//This is the RANDOM object as referenced by getRandomValue();
[StructLayout(LayoutKind.Sequential)]
public struct RANDOM
{
    uint a;
    uint b;
    uint c;
}

//This is redundant since nothing is referencing it.
[StructLayout(LayoutKind.Sequential)]
public struct MESSAGE
{
    IntPtr sender;
    IntPtr recipient;
    char[] mText;
}

自分の為にメモする:

Java とは異なり、オブジェクト名はファイル名と同一である必要はなく、複数のオブジェクト宣言を 1 つのファイル内に置くことができるため、これはややこしいと感じていますが、この例 (私のシナリオ) では、すべてのオブジェクトは独自のファイル内で (同じ名前で) 宣言されています。

4

3 に答える 3

17

ReSharper は、コードをクリーンアップするための最良の選択です。

ReSharper Early Access Program のおかげで無料で使用できます。

ここに画像の説明を入力

于 2012-10-09T01:34:59.700 に答える
12

これを行うために使用できるツールがいくつかあります。

FxCop は未使用の内部およびプライベート コードのみを検出します。もちろん、アセンブリの外部からアクセスできるようにする必要があるコードのみを公開するようにすれば、それで十分です。

于 2012-10-08T23:40:16.050 に答える