1

こんにちは私はMVC2.0Webアプリケーションに取り組んでいます。これには、2つの言語を切り替える必要があります。

既存のソリューションはうまく機能しませんでした。MVC[DisplayName]属性やデータ注釈エラーメッセージなどは、MVC 2.0でカルチャを認識していなかったため、機能しませんでした。

ここの例に従いました: http ://adamyan.blogspot.co.uk/2010/02/aspnet-mvc-2-localization-complete.html#!/ 2010/02 / aspnet-mvc-2-localization-complete html

いくつかの調整を加えるだけで、すべてが私のVisual Studio環境で完全に機能し、言語が切り替わり、MVC表示名などが正常に使用されるようになりました。埋め込みリソースを使用していて、英語のresxファイル(例:MyPage.resx)とカルチャバージョン(例:MyPage.cy-GB.resx)があります。

問題は、これを実稼働環境にインストールすると、言語が切り替わらないことです。これらの埋め込みリソースはメインのWebアプリケーションdllの一部であると思ったので困惑しているので、一致するリソースを見つけるのに問題はありませんか?

私はそれが現在のスレッドの文化を確実に変えていることを知っています。一致するリソースをロードしていないだけです。

アプリケーションはハーベスティングせずにWIXを使用してインストールされますが、すべてのファイル(aspxなど)を含めました。以前は、サテライトアセンブリを使用し、カルチャ名を使用してbinフォルダーにリソースdllを作成していました。前述のように埋め込みリソースを使用しているため、これを削除しました。衛星アセンブリはこれの要件ですか?それらが埋め込まれることを非常に嬉しく思います。

私はこれを解決する方法について本当に混乱しているので、どんなアドバイスも大歓迎です。

ありがとう

4

1 に答える 1

0

MyPage.cy-GB.resxは衛星アセンブリに埋め込まれています。実際、衛星アセンブリに組み込まれるのは組み込みリソースだけです。

于 2012-08-24T21:47:38.090 に答える