アプリケーションのリソース
ほとんどの製品レベルのアプリケーションでは、リソースを使用する必要があります。 リソースは、実行不可能なデータであり、アプリケーションと共に論理的に配置されます。 このリソースは、アプリケーション内でエラー メッセージまたはユーザー インターフェイスの一部として表示できます。 リソースには、文字列、イメージ、永続化されたオブジェクトなど、多数の形式のデータを含めることができます。 データをリソース ファイルに格納しておけば、アプリケーション全体を再コンパイルすることなくデータだけを変更できます。 永続化されたオブジェクトをリソース ファイルに書き込むには、そのオブジェクトをシリアル化できることが必要です。
.NET Framework は、リソースの作成とローカライズを包括的にサポートします。 さらに、.NET Framework は、ローカライズしたリソースのパッケージ化および配置のためのシンプルなモデルもサポートしています。
ASP.NET のリソースの詳細については、「ASP.NET Web ページのリソースの概要」を参照してください。
リソースの作成とローカライズ
アプリケーションのリソースを特定のカルチャに合わせてローカライズできます。 これにより、アプリケーションのローカライズ (翻訳) バージョンを構築できます。 アプリケーションは、CultureInfo.CurrentUICulture プロパティの値に従って、適切なローカライズ バージョンのリソースを読み込みます。 この値は、アプリケーションのコード内で明示的に設定されるか、またはローカル コンピューター上の現在のユーザーのロケールに従って共通言語ランタイムによって設定されます。 CurrentUICulture の設定方法については、「固有カルチャのリソースの検索と使用」および「CurrentUICulture プロパティの使用」を参照してください。
リソースのパッケージ化と配置
アプリケーションのリソースをサテライト アセンブリ内に配置できます。 定義上、サテライト アセンブリにはリソース ファイルだけが含まれます。 アプリケーション コードは一切含まれません。 サテライト アセンブリの配置モデルでは、1 つの既定アセンブリ (メイン アセンブリ) といくつかのサテライト アセンブリを使用するアプリケーションを作成します。 アプリケーションがサポートするカルチャごとにサテライト アセンブリを 1 つ作成する必要があります。 サテライト アセンブリはメイン アセンブリの一部には含まれないため、アプリケーションのメイン アセンブリを交換しなくても、特定のカルチャに対応するリソースだけを簡単に交換または更新できます。
どのリソースをアプリケーションの既定のリソース アセンブリに含めるかは、慎重に決定してください。 これはメイン アセンブリの一部に含まれるため、変更するためにはメイン アセンブリを交換する必要が生じます。 既定のリソースを提供しないと、リソース フォールバック プロセスによって既定リソースが検索されるときに例外が発生します。 アプリケーションが適切にデザインされている場合は、リソースを使用することによって例外が発生することはないはずです。