プロジェクトが次のようにレイアウトされている WCF RIA Services + Prism v4 アプリケーションを作成しようとしています。
クライアント側
モジュール (今のところ 1 つだけ):
Project.Modules.Clients (私の Project.Web アプリケーションへの WCF RIA サービス リンクを含み、サーバー側の Project.Web プロジェクトに依存します)
シェルプロジェクト
Project.Shell (私の Project.Web アプリケーションへの WCF RIA サービス リンクを含み、Project.Modules.Client モジュールと Project.Web プロジェクトに依存します。また、継承した UnityBootstrapper で使用されるモジュール カタログ XAML ファイルも含みます)
サーバ側
メイン Web プロジェクト
Project.Web (私の WCF RIA サービス、DataModel などを含む)
質問
シェル プロジェクトからモジュール プロジェクトを参照する必要があるのはなぜですか? これは、動的モジュールの初期化の目的を本質的に無効にしませんか? 以下を含むいくつかのサンプルプロジェクトとブログ投稿に従って、以下を試みました。
http://telecosystems.codeplex.com
および付随するブログ投稿はこちら:
http://bachelorthesis.zdechovan.com/prism-solution-based-on-the-business-application-template/
また、David の MSDN ブログ投稿は次のとおりです。
http://blogs.msdn.com/b/dphill/archive/2009/08/17/prism-and-net-ria-services.aspx
参照を含めないとどうなるかは、次のような例外です。
Resolution of the dependency failed, type = "Project.Modules.Clients.ClientsModule", name = "(none)". Exception occurred while: while resolving. Exception is: InvalidOperationException - The current type, Microsoft.Practices.Prism.Regions.IRegionManager, is an interface and cannot be constructed. Are you missing a type mapping?
そのため、ブートストラップとモジュール カタログ ファイルを 3 回チェックしましたが、明らかに Unity はモジュールを認識できないようです。
私のシェルから私のモジュールへのそのような参照を要求するために私が間違っているかもしれないことについてのポインタは大歓迎です。
ありがとう。