VS 2008 で Web プロジェクトを実行しています。国際化のために App_GlobalResources フォルダーにいくつかのグローバル リソース ファイル (*.resx) があります。これはすべて、VS からのローカル IIS インストールで魅力的に機能します。
しかし、Web プロジェクトをローカル ファイルシステムや別のサーバーに公開すると、すべてのリソースが見つからなくなります。したがって、プリコンパイルが何らかの形で破損していると思います。コンパイル済みの Web を呼び出すと、キー xyz を持つリソース オブジェクトが見つからないというエラーが表示されますが、以前は見つかっていました。
リソースが* .dllに含まれているかどうかを.NETリフレクターで確認しました。これらの識別子はすべてそこにあります (bin/Web.dll、bin/<culture>/Web.resources.dll)。識別子は次のようにロードされます。
<asp:MenuItem NavigateUrl="~/OrderNew.aspx" Text="<%$ Resources:MyProject, MenuNewOrder %>" Value="NewOrder">
リソース ファイルは MyProject.resx および MyProject.<culture>.resx と呼ばれ、<culture> は特定のカルチャ (つまり、MyProject.de-DE.resx) に対応します。
これを解決する方法はありますか?
どんな助けでも本当に感謝しています。
ありがとう
編集:
App_GlobalResources フォルダーを手動で出力にコピーすると、リソースが正常に読み込まれる場合があります。ですから、このプリコンパイルは一体何なのか、本当に気になります。
私はまだ問題を「正しい方法」で解決することに興味があります。