2011-01-14 11 views
1

MVCソリューションは、コアとクライアントを分割して構築されています。コアはアプリケーションの大半を定義しますが、各クライアントには独自のコントローラアセンブリとWebプロジェクトがあります。ASP.NET MVCリソースファイルの戦略

クライアント・プロジェクトを定義するためのリソースを使用します。マークアップページにレンダリングされる

  • テキストは
  • DisplayNameには、コントローラ
  • にメッセージなどのためのviewmodels
  • テキストに属性値など

コアで定義するためにコアが使用されます。

  • 例外メッセージ
  • 検証メッセージ
  • など

のみ、私は純粋にクライアントのためのリソースのセットを持っていると思います特定のクライアントのために存在する可能性がありますリソースがあるとして - (参考文献。 ClientNameプロジェクト)

コアで使用されるその他のリソースは、コアのアセンブリで定義する必要があります。

これはすべて正常に動作しますが、ボード全体の実際のリソース値は、コアリソースプロジェクトがコアにあるため個別に変更できません(コアリソースプロジェクトを参照することもできません)。

理想的には、これらの値を再インストールせずに本番環境で変更できるように、リソースをアセンブリに埋め込んではなりません。

私はこの間違いが起こっていると確信しています。

答えて

1

プロバイダResourceManagerにファクトリを作成し、各クライアントプロジェクトでファクトリをセットアップして、現在のアセンブリから適切なリソースを提供します。

ところで、組み込みリソースを使用したくない場合は、独自のResourceManagerを作成して、必要な場所からリソースを提供し、各クライアントプロジェクトでファクトリを設定します。