例如,我必须在每个数字到字符串的转换中使用.ToString(CultureInfo.CurrentCulture)。我能不能以某种方式覆盖.ToString(),这样我就不会在字符串转换中显式地得到像区域性这样的消息了?
例如,现在我必须更改每个
myNumValue.Count.ToString();至
myNumValue.Count.ToString(CultureInfo.CurrentCulture);发布于 2012-02-16 01:20:08
此规则的要点是为每个格式化和解析操作明确选择区域性。如果您试图系统地交换实现来“欺骗”规则,那么您最终只会掩盖潜在的问题。正如Lonli-Lokli所建议的,如果您不喜欢读取带有区域性参数的ToString调用,则可以考虑使用扩展方法,但是对于您支持的每个区域性,您应该有一个不同的扩展方法。例如:ToUIString() -> ToString(CultureInfo.CurrentCulture)和ToInvariantString() -> ToString(CultureInfo.InvariantCulture)
发布于 2012-02-15 22:03:33
用ToString(CultureInfo.CurrentCulture)替换ToString()没有任何意义,因为这正是ToString()已经在做的事情。
如果您没有将已定义的区域性(可能是通过用户选择)放入您的代码中,则只需遵循第一种方法。
发布于 2012-02-15 21:29:49
如果您指的是来自Code Analysis的消息,则可以禁用特定规则。
https://stackoverflow.com/questions/9294290
复制相似问题