2

Silverlight アプリケーションと、それをホストする対応する ASP.Net アプリケーションがあります。

検出されたカルチャ設定を使用して、Silverlight アプリケーションで日付をフォーマットしたいのですが、システム設定が正しく検出されていないと思います (または、システム設定を基にして知らない設定を使用しています)。

(ASP.Net アプリと Silverlight で) スレッドのカルチャ値を確認すると、CurrentCulture は正しく en-GB に設定されていますが、CurrentUICulture は en-US です。

Windows 8 で、場所と言語をすべて en-GB に設定して実行しています。

Fiddler を使用してブラウザーの設定を確認しましたが、Accept-Language ヘッダー値を en-GB として送信しています。

これは、変更する必要がある Web サーバーの設定ですか? 開発サーバーで Visual Studio のビルドを使用しています。

4

2 に答える 2

1

まず、明確にするために:

CurrentCulture は、Dateformats、Numbers、Currencies など (実際の言語ではありません) 用です。CurrentUICulture は UI の言語です。

スレッドに CurrentUICulture と CurrentCulture の両方を設定していますか?

Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("de-ch");
Thread.CurrentThread.CurrentUICulture = CultureInfo.CreateSpecificCulture("de-ch");
于 2013-01-10T16:09:19.547 に答える
0

.NET の CultureInfo の CurrentCulture プロパティと CurrentUICulture プロパティの違いは何ですか?へのnicodemus13コメントを参照してください。

Microsoft は、彼らの知恵では、米国英語と (英国) 英語またはその他の英語の UI カルチャを分離していないことに注意してください。英語用の MUI はありません。つまり、CurrentUICulture は、地域設定をローカライズするように設定できる CurrentCulture に関係なく、英語のコンピューターでは常に en-US になります。

于 2013-09-06T12:50:43.703 に答える