私は、右クリックして "コードメトリクスの計算"を選択することで、Visual Studio 2008チームエクスプローラで私のコードの循環的複雑さにアクセスできることを知っています。私はそれを表示するWebアプリケーションのためにこのデータを公開したいと思います。誰もがAPIを通じてこのデータにアクセスする方法を知っていますか?.NETでの循環的複雑さの導出
ありがとうございました!
私は、右クリックして "コードメトリクスの計算"を選択することで、Visual Studio 2008チームエクスプローラで私のコードの循環的複雑さにアクセスできることを知っています。私はそれを表示するWebアプリケーションのためにこのデータを公開したいと思います。誰もがAPIを通じてこのデータにアクセスする方法を知っていますか?.NETでの循環的複雑さの導出
ありがとうございました!
よりも大きな循環的複雑度を持つメソッドを返し、私はしません - Visual Studioは、その種の任意ののAPIがありますか?サイモミックな複雑さを計算することはかなり簡単です。 Gendarmeがあなたの答えかもしれません。
APIはありません。しかし、Code Metrics Power Toolによって生成されたXMLファイルを読むことができます。その後MetricsResults.xmlのうち、必要なデータをつかむ
metrics /f:MyAssembly.dll /o:MetricsResults.xml
:だからのようなコマンドラインでコードメトリクスのXMLファイルを生成します。
パワーツールの詳細here
このanswerで説明したように、1の方法
ModuleDefinition module = ModuleDefinition.ReadModule(fullPathToTheAssembly);
foreach (var type in module.Types)
{
foreach (var me in type.Methods)
{
if (!me.HasBody || me.IsGeneratedCode() || me.IsCompilerControlled)
continue;
var r = AvoidComplexMethodsRule.GetCyclomaticComplexity(me);
Console.WriteLine("{0}: {1}", me.ToString(), r);
}
}
の循環的複雑度を計算する憲兵オープンソースツールのAPIを活用することができますが憲兵がFxCopのための良い代替なりますか? – Paco