あなたはまた、あなたは利用したいの文化を提供するために、CultureInfo.GetCultureInfo
を使用することができますSystem.Threading.Thread.CurrentThread
// set CurrentCulture to Invariant
Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;
// set UI culture to invariant
Thread.CurrentThread.CurrentUICulture = CultureInfo.InvariantCulture;
あなたの現在のスレッドでテストを実行するための特定の文化を強制することができます。これは、テストの一部であるSetUp
にある可能性があります。
はチームシティーは異なるスレッドでFixtureSetupとユニットテストを実行している、または何らかの形でCurrentUICulture
を変更しているように思え分離
[TestFixture]
class MyTest {
CultureInfo savedCulture;
[SetUp]
public void SetUp() {
savedCulture = Thread.CurrentThread.CurrentCulture;
Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;
}
[TearDown]
public void TearDown() {
Thread.CurrentThread.CurrentCulture = savedCulture;
}
}
これはまさに私がやったことです。 Resharperでユニットテストを実行しているときに動作しますが、TeamCityでユニットテストを実行しても動作しません。 –
TeamCityでnUnitをどのように実行しますか? – Nekresh
'[SetCulture(" en-US ")]'属性を使ってみましたか? [http://www.nunit.org/index.php?p=setCulture&r=2.5.9](http://www.nunit.org/index.php?p=setCulture&r=2.5.9) – Nekresh