我想知道人们对使用FxCop时CA1806(DoNotIgnoreMethodResults)静态代码分析警告的看法。
我有几个情况需要使用Int32.TryParse来读取保存在文件中的内部配置信息。最终我会得到很多类似以下代码:
Int32.TryParse(someString, NumberStyles.Integer, CultureInfo.InvariantCulture, out intResult);
MSDN表示如果出现错误,intResult的默认结果为零,这正是我想要的。
不幸的是,当进行静态代码分析时,此代码将触发CA1806。修复此问题需要编写大量冗余/无用代码,例如以下内容:
bool success = Int32.TryParse(someString, NumberStyles.Integer, CultureInfo.InvariantCulture, out intResult);
if (!success)
{
intResult= 0;
}
我应该抑制这个消息还是硬着头皮添加所有冗余的错误检查?或者也许有人对处理这种情况有更好的想法?
谢谢!