2012-10-10 26 views
6

TryParseメソッドでコード解析ルールCA1305 - Specify IFormatProviderが機能しないのはなぜですか? 'マイクロソフトのすべてのルール' ルールセットと例えば Visual Studio 2010のコード解析TryParseメソッドでCA1305(Specify IFormatProvider)ルールが機能しない

は、コード分析は、次のコードのためのCA1305の警告を与える:

static void Main(string[] args) 
{ 
    string text = args[0]; 

    double value = double.Parse(text); 
} 

が、コード以下のためCA1305警告を与えるものではありません:

static void Main(string[] args) 
{ 
    string text = args[0]; 

    double value; 
    if (!double.TryParse(text, out value)) 
     value = 0; 
} 

I TryParseメソッドは、入力文字列が信頼できない場合に解析を行う正しい方法であるため、これは非常に不幸です。

TryParseメソッドのCA1305ルールが、いくつかの新しいバージョンのコード解析ツールまたは一部のサードパーティによって実装されているかどうかは知りませんか?

+0

これには[接続バグ](https://connect.microsoft.com/VisualStudio/feedbackdetail/view/788373/code-analysis-rule-ca1305-is-missed-for-tryparse)があります。 –

答えて

0

これはFxCopとSonarLintのような最近のツールで修正されています。

関連する問題