Thread.CurrentCulture没有保存到实例变量?

时间:2013-08-29 22:56:37

标签: c# multithreading debugging asp.net-mvc-4 localization

enter image description here

正如您所看到的,我尝试将Thread的CurrentCulture捕获到一个实例变量,以便我可以通过类重用它,但它不会持久化。在上面的照片中,我表明即使在分配之后,值仍然不同。这是为什么?

1 个答案:

答案 0 :(得分:5)

为什么会发生这种情况可能有几个原因

  • PickLanguage方法正在另一个具有不同文化的线程上执行
  • 线程的文化发生了变化。

这些中的任何一个都会导致缓存的文化与当前的文化不同。通常,名为Current的缓存值很危险,因为它表明它们可以并且将会更改