2011-01-09 7 views
0

日々、私は読んで研究しており、完璧なインフラストラクチャを構築する方法をまだ苦労しています。 Prism 4.0テンプレートはありませんので、私は戦略を考え出しましたが、これが正しい戦略であることを確認する必要があり、経験豊かなPRISM/RIA開発者からのアドバイスをいただければ幸いです。Silverlight/Prism/RIA:最適なインフラストラクチャを作成するには?

私はPRISM 4.0使用し、RIA Servicesの1.0 Sp1のベータ版、Silverlightの4.0、Entity Frameworkの4.0側が

私が最初に作成し、 "Silverlightのビジネスアプリケーション" を、作成した

1)クライアントRIA認可を実装したWeb.hostおよびSilverlightクライアントアプリケーション最初に作成されたSilverlightクライアントアプリケーションは、シェルプロジェクトとして使用されます。

2)インフラプロジェクト(共通)

このプロジェクトは、RIAだけでなく、サービスインタフェースによって自動生成されているいくつかの一般的なプリズムMEFの属性と、おそらくエンティティモデルが含まれます。アイデアは、単純なSilverlightクラスライブラリを作成することです。プロジェクトのプロパティで、Ria Servicesが含まれているhost.Webプロジェクトを指すようにドロップダウン 'WCF Ria Services Link'を選択します。などその後再構築した後、私はクラスライブラリ内のエンティティモデルを見ることができていますし、これらはその後、自分のviewmodelsを養うために、プリズムモジュール間で共有することができ

3)サービス層

私が作成すべきWeb.hostプロジェクトのEF4モデルを開き、そこにドメインサービスを追加しますか?次に、ドメインサービスからインターフェイスを抽出し、インターフェイスをインフラストラクチャ(共通)プロジェクトに配置します。したがって、Web.Hostはインフラストラクチャ(共通)プロジェクトを参照してインタフェースにアクセスする必要があります。クライアント側では、インタフェースをMEFが使用してサービスを取得または模擬することができます。しかし私は、クライアント側で生成されたエンティティも含む共通のプロジェクトを参照するサービスについて心配しています。また

4)認証

承認を懸念ビット、私はシェルのプロジェクト上のすべてを残すもの?インフラストラクチャ(共通)プロジェクトに何かを移動して共有する必要がありますか?

PRISMで初めて設計したので、誤解や忘れがあるかもしれません。私の提案を改善してください。

あなたの助けが非常に熱心な研究の2週間後

KAVE

答えて

0

をプリズムのための素晴らしいクイックスタートテンプレートがあります私はブログhttp://blogs.msdn.com/b/dphillでそれを見つけたので、それはとても素敵に見えます。私はそれもRIAサービスライブラリを作成したので、今はすべてが分かれています。

1)Webプロジェクト 2)Web上のRiaサービス 3)RiaServiceクライアントコードが別々の共有アセンブリとして生成され、モジュールによって使用されます。それでおしまい。

+0

ありがとうございます。うん、私はすでに上記の同じリンクを公開しています。 ;)それは確かに良い資源です。 – Houman

関連する問題