2013年6月9日日曜日

Win8 だとWebアプリでリソースが中国語に切り替わらない

仕事で開発しているWebアプリケーションのリソースがWin8のIE10で中国語表示に切り替わらないことが分かった。
Win8からインターネットオプションの言語の設定を切り替えるとOSの言語の設定と連動して切り替わる。 IEのメニューまで中国語になっているのにそこに表示されるページは日本語のリソースが選ばれている。
Win7+IE10では問題ない。

F12で開発者ツールを起動し、パケットをキャプチャ。 要求ヘッダーの Accept-Languageを確認すると 「zh-Hans-CH,zh-Hans,ja,...」

あれれ? うちのアプリって中国語 zh-CN にしてなかったっけ?

ということでリソースファイル名をfoo.aspx.zh-Hans.resx のように変更することで Win8 でも中国語リソースが表示されることを確認。

Win7 で確認してみると

中国語(簡体字)[zh-Hans]
中国語(簡体字、中国)[zh-CN]

と別々に選べるようになっている。

Win8 では zh-Hans に統一されたってこと?