Visual Studio 2013では、特別なコード(メソッド、プロパティ、フィールド、...)の参照数はCode Lensで示されます。未使用(ゼロ参照) Visual Studioのコードを取得したい。それらを取得する方法はありますか?
おそらく、目的を達成するための最良かつ最も簡単な方法は、ビルドインコード分析ツールとVisual Studioを使用して、デッドコードと未使用のメンバーを見つけて直接導くことです。
このために、新しいコード分析ルールセットファイルを作成しました(Via File-> New-> File、左ペインでGeneralが選択されていることを確認し、下にスクロールします) find コード分析ルールセット、ファイル名を指定してから、以下のルールを検索して選択します)。ルールセットファイルの内容については、コピーして、使用する拡張子が.rulesetの新しいファイルに貼り付けてください。
ルールセットファイルを指定すると、ソリューションエクスプローラーパネルでプロジェクトファイルを右クリックし、プロパティを選択できます。プロジェクトプロパティウィンドウで、左パネルのコード分析タブをクリックし、開くをクリックして.rulesetファイルの場所を参照します。 (プロジェクトファイルではなく)ソリューションファイルのプロパティに移動すると、ソリューション内の各プロジェクトのコード分析ファイルを1か所で設定できます(コード分析設定で、ルールセットファイルを選択するためのドロップダウン注:このプロパティウィンドウのドロップダウンに表示するには、ルールセットファイルを参照しておく必要があります)。
次に、プロジェクト/ソリューションでコード分析を実行するだけで(Via Analyze-> Run Code Analysis On Solution -OR- Alt + F11)、警告として返されます、参照されていないメソッドまたは見つかった未使用のメンバー。メソッドによって参照されるメソッドも検索しますが、メソッド自体は他の場所に参照を持ちません。
しかし、デッドコードのコード分析が間違った方向に導く可能性のある方法の1つとして、デリゲート経由でメソッドを呼び出すだけで参照が「隠されている」場合、そしてもちろんリフレクションであることに注意してください。
デッドコードを検出するルールは、具体的には次のとおりです。
以下は、利便性のために、上記の手順に従って作成できる.rulesetファイルの内容です。以下のXMLをコピーし、notepad ++に貼り付け、拡張子。rulesetで保存し、上記で説明したように参照して使用できます。
<?xml version="1.0" encoding="utf-8"?>
<RuleSet Name="Dead Code Rules" Description=" " ToolsVersion="12.0">
<Rules AnalyzerId="Microsoft.Analyzers.ManagedCodeAnalysis" RuleNamespace="Microsoft.Rules.Managed">
<Rule Id="CA1801" Action="Warning" />
<Rule Id="CA1804" Action="Warning" />
<Rule Id="CA1811" Action="Warning" />
<Rule Id="CA1812" Action="Warning" />
<Rule Id="CA1823" Action="Warning" />
</Rules>
<Rules AnalyzerId="Microsoft.Analyzers.NativeCodeAnalysis" RuleNamespace="Microsoft.Rules.Native">
<Rule Id="C6259" Action="Warning" />
</Rules>
</RuleSet>
これがお役に立てば幸いです。ベストアンサーを選択することを忘れないでください。
これを手動で実行して、パブリックとしてマークされた未使用のクラスを見つけるために使用しました。
注:ファイルルールごとに1つのクラスに従わない場合は、さらに多くの作業が必要になります。また、APIサービスエンドポイントは、外部プロジェクトで使用されていないことを確認する必要があります。