ReSharper希望改变这一点:
platypusID = DuckbillValues[i - 1].ToString();
..对此:
platypusID = DuckbillValues[i - 1].ToString(CultureInfo.InvariantCulture);
由于我的应用程序仅在美国使用的可能性很大,我将默认以下哪一项:
1) Smart
2) Dumb
3) Neither smart nor dumb
4) Smart, but not for that reason
5) Dumb, but not for that reason
答案 0 :(得分:6)
由于我的应用程序仅在美国使用的机会很大。
即使您的应用仅在美国使用,如果您针对大量受众群体,用户也可以自定义其区域设置或使用其他区域进行系统设置。
无论您是用户做什么,使用InvariantCulture
都是安全的。鉴于这是设置“id”,我个人最有可能强迫文化InvariantCulture
,以保证我以后不会得到一个奇怪的结果。
这也使得将来更容易支持其他地区......您永远不会知道您的代码将在以后发生什么,无论是在此应用程序中还是在其他应用程序中。
此外 - 由于你正在使用ReSharper,它已经警告过你了。你已经在那里了。遵守良好的编码标准实际上比忽略警告更容易,这使得很难想出不指定文化的原因。