1
私はasp.net mvcアプリケーションを持っています。それは多言語であり、いくつかの値をクッキーに書き込む。この問題は、アプリケーションのcurrentCulture(言語)とCookieに格納されているDateTimeの値が異なる場合に発生します。したがって、私は、英語の文化でのみDateTime値を保存して取得することを決めました。しかし、私はその問題に直面しました。Save TimeTime.Nowを切り替える培養の間
var currentCulture = Thread.CurrentThread.CurrentCulture; //for example, ru-RU
var currentUICulture = Thread.CurrentThread.CurrentUICulture;
var englishCulture = CultureInfo.GetCultureInfo("en-US");
Thread.CurrentThread.CurrentCulture = englishCulture;
Thread.CurrentThread.CurrentUICulture = englishCulture;
var dateTime = DateTime.Now; // 10/22/2011 9:56:15 AM (in English)
Thread.CurrentThread.CurrentCulture = currentCulture;
Thread.CurrentThread.CurrentUICulture = currentUICulture;
return dateTime; // 22.10.2011 9:56:15 (in Russian). But why?
英語の文化の中でDateTime.Nowを返したいと思います。
ローカル変数 "dateTime"の値が変更されたのはなぜですか? – Alexandre
Err ..何ですか?それは変更されていません - それはちょうど異なったフォーマットです。 「なぜ、日付の文字列表現が変わるのですか」という意味ですか?これは、デバッガが現在のカルチャを使用し、そのメソッドを変更したToStringを呼び出すときです。 –
現在のカルチャがen-USでない場合、en-USカルチャでDateTime構造体(文字列ではない)を返すことは可能ですか? – Alexandre