通常、私がこれを持っていた場合:
public string Foo(string text)
{
return text.Substring(3);
}
CA1062: Validate arguments of public methods
私はコード分析から得たでしょう。コードを次のように変更することで修正されます。
public string Foo(string text)
{
if (text == null)
throw new ArgumentNullException("text");
else if (string.IsNullEmptyOrWhiteSpace(text)
throw new ArgumentException("May not be empty or white space", "text")
else if (text.Length < 3)
throw new ArgumentException("Must be at least 3 characters long", "text");
return text.Substring(3);
}
しかし今、この検証を行う別の手段を使用したいと思います。
public string Foo(string text)
{
Validator.WithArgument(text, "text").NotNullEmptyOrWhitespace().OfMinLength(3);
return text.Substring(3);
}
メソッドは引数を検証するため、コード分析規則は満たされますが、それでもCA1062
警告が表示されます。毎回手動で抑制したり、特定のコード分析ルールをオフにしたりせずに、このようなケースのコード分析ルールを抑制する方法はありますか?