App_GlobalResources/Strings.resxをアセンブリにコンパイルしたい(そして最終的にStrings.es.resx、 Strings.fr.resxなどのサテライト アセンブリを使用する) 必要がありますが、アプリが公開されると次のエラーが発生します。
「ファイルまたはアセンブリ 'App_GlobalResources' またはその依存関係の 1 つを読み込めませんでした。指定されたファイルが見つかりません。」
再現する手順:
- 新しい ASP.NET MVC プロジェクトを作成します。
- App_GlobalResources フォルダーとStrings.resxファイルを追加します。
- ファイルのビルド アクションを「埋め込みリソース」に設定します。
- 文字列をStrings.resx
HomeController.Index()に追加し、で使用します。ViewData["Message"] = Strings.MyTest - F5 でデバッグ、正常に動作します。
- IIS に発行すると ( Strings.resxは発行から除外されるため)、発行されたサイトで上記のエラーが発生します。
ASP.NET MVC プロジェクトは、dll にコンパイルされた文字列リソースを使用できますか? もしそうなら、何が間違っていますか?
では、 ResourceManagerがそれらを見つけられないのはなぜでしょうか? デフォルトでメイン アセンブリにフォールバックすることになっていませんか?
