4

Thread.CurrentThread.CurrentCulture からカルチャ情報を読み取る IIS 上のサイトを実行しています。これは、私が理解しているシステム文化情報から来ています。特定の値に設定する必要がありますが、OS レベルで変更できませんでした。

私の Windows 7 コンピューターは、最初は en-GB カルチャでセットアップされていましたが、現在は en-US に切り替える必要があります。地域と言語のコントロール パネルで変更しました。[形式] タブの形式は英語 (米国)、[場所] タブの現在の場所は米国、[管理] タブの非 Unicode プログラムの現在の言語は英語 (米国) です。再起動後、値はすべて Windows UI で正しく読み取られます。

これらの変更後にコンピューターを再起動し、ローカル DNS をクリアしました (それが問題かどうかはわかりません)。IIS を再起動し、アプリ プールをリサイクルしましたが、まだ en-GB として読み取られます。

この cultureInfo を更新するために他に必要なことはありますか?

4

1 に答える 1

5

ASP.NET 自体には、そのタスクの構成があります。カルチャは、system.web セクションの web.config ファイル内で (多くの方法で) 設定できます。以下のスニペットは、en-US カルチャがどのように強制されるかを示しています

<globalization 
    enableClientBasedCulture="false" 
    uiCulture="en-US" 
    culture="en-US" />

アプリケーションがクライアント (ブラウザー) からのカルチャを受け入れる準備ができている場合、設定は次のようにする必要があります。

<globalization 
    enableClientBasedCulture="true" 
    uiCulture="auto" 
    culture="auto" />

上記の設定では、クライアント ブラウザで選択された言語が使用されます (例: 私の場合は cs-CZ)。何も定義されていない場合は、システム設定が使用されます。最後のスニペットは、クライアントが意図したカルチャを設定して送信できるようにする方法を示していますが、言語が事前に選択されていない場合は、システム設定を他のデフォルト値en-USでオーバーライドします。

<globalization 
    enableClientBasedCulture="true" 
    uiCulture="auto:en-US" 
    culture="auto:en-US" />
于 2012-10-20T06:32:54.290 に答える