私は一般的なローカリゼーションにあまり精通しておらず、MicrosoftEnterpriseLibraryを初めて使用します。ローカライズされたリソースを作成し、それを例外管理で使用するにはどうすればよいですか?
ポリシーによって例外が処理されたときにわかりやすいエラーメッセージをスローするように置換ハンドラーを設定しました。メッセージリソース名とメッセージリソースタイプを指定するためのフィールドがあります。私はこれらの分野で何が起こっているのか分かりません。例はまったく見つかりません。
私は一般的なローカリゼーションにあまり精通しておらず、MicrosoftEnterpriseLibraryを初めて使用します。ローカライズされたリソースを作成し、それを例外管理で使用するにはどうすればよいですか?
ポリシーによって例外が処理されたときにわかりやすいエラーメッセージをスローするように置換ハンドラーを設定しました。メッセージリソース名とメッセージリソースタイプを指定するためのフィールドがあります。私はこれらの分野で何が起こっているのか分かりません。例はまったく見つかりません。
Designer ファイルを手動で編集する必要はありません。実際、そうすべきではありません。
私は VS 2010 と C# を使用していますが、概念は VS 2012 と VB で同じでなければなりません。
次のリンクは、あなたの答えに加えて、これを理解するのに非常に役立ちました。
http://odetocode.com/blogs/scott/archive/2009/07/16/resource-files-and-asp-net-mvc-projects.aspx
(App_GlobalResources に関する彼の警告は無視してかまいません。そこに私の Exceptions.resx ファイルがあり、これでうまくいきます。)
私はこれを理解しました。
他のローカリゼーションと同様に、標準リソースを .resx ファイルに追加します。私の問題は、リソース タイプとリソース名を Enterprise Library の構成インターフェイスの置換ハンドラーに追加しようとしたときに、追加するタイプがアセンブリに含まれていなかったことです。
問題は 2 点です。VB.Net を使用して Visual Studio 2012 で .resx を作成すると、名前空間として My.Resources が使用されます。My.[FolderName] かもしれませんが、わかりません。もう 1 つの問題は、クラスが Public ではなく Friend として作成されることです。
プロパティの名前空間を変更し、.vb ファイルで Friend を Public に手動で変更する必要がありました。コードが再生成されるため、新しいリソースを追加するたびに元に戻りますが、少なくとも今は機能させることができます。