Kr1*_*r15 9 .net culture cultureinfo
背景:
我有一个组件的问题,每次调用它的特定方法后,它会将当前线程文化更改为"en-US".进一步在我的过程中导致问题,例如数据访问层不再工作,因为SqlParameter的CultureInfo也变为"en-US",因此给定的字符串不能再被解析为DateTime SqlValue.
可能的方法:
因此,我们的想法是在之前备份线程当前文化,然后在调用特定方法后恢复它,这会改变当前线程文化.在恢复文化时,我会检查文化是否完全改变了.
问题/问题:
我可以比较backuped CultureInfo.Name,Thread.CurrentThread.CurrentCulture.Name但我也可以使用.Equals()CultureInfo实例的方法.哪个是比较两个CultureInfo实例的更好方法?可能有第三个/更好的解决方案吗?
Ric*_*ter 13
您应该使用(因为它比较了CultureInfo实例而重载)
bool result2 = cultureInfo1.Equals(cultureInfo2);
Run Code Online (Sandbox Code Playgroud)
如本博客所示:http://www.toolheaven.net/post/2010/07/02/Beware-when-comparing-CultureInfo-instances.aspx