我尝试在我们产品的一些程序集上运行 FxCop,我得到了很多匹配“指定 IFormatProvider”规则的内容。
碰巧的是,其中一些是合法的,但它也匹配如下代码:
Logger.DebugFormat("Appending file {0}", fileName);
可以写成
Logger.DebugFormat(CultureInfo.InvariantCulture, "Appending file {0}", fileName);
第二种变体更难阅读。
那么,实际上是否建议始终指定IFormatProvider
或者它“只是”规则中使用的启发式的限制?