2011-01-09 52 views
0

自从我正在阅读和研究并且仍在努力如何创建完美的基础架构以来。由于没有Prism 4.0模板,我想出了一个策略,但我需要确定这是正确的策略,我会感谢来自有经验的PRISM/RIA开发人员的建议。Silverlight/Prism/RIA:如何创建最佳的基础架构?

我用PRISM 4.0,RIA服务1.0 SP1测试版,Silverlight的4.0,实体框架4.0

1)客户端

我创建第一个 “Silverlight业务应用程序”,它创建了一个Web.host和一个实施了RIA授权的Silverlight客户端应用程序。最初创建的Silverlight客户端应用程序应该用作Shell项目。

2)基础设施项目(通用)

该项目将包含一些常见的棱镜MEF属性,也许是实体模型是由RIA以及服务接口自动生成。这个想法是创建一个简单的Silverlight类库,并在项目的属性下,我将选择下拉'WCF Ria服务链接'来指向包含Ria服务的host.Web项目。然后,重建后,我能看到类库中的实体模型,这些可再棱镜模块之间共享,以养活自己的ViewModels等

3)服务层

我应该创建Web.host项目上的EF4模型并在其中添加域服务?然后,我将从域服务中提取一个接口,并将接口放入基础结构(通用)项目中。因此Web.Host需要引用基础结构(通用)项目才能访问该接口。在客户端,MEF可以使用该接口来检索或模拟该服务。但是我担心引用一个包含客户端生成实体的公共项目的服务。

4)授权

也有点担心的授权,将我留在壳牌项目的一切吗?或者我必须将任何东西移到基础结构(通用)项目上以分享它?

由于这是我第一次使用PRISM进行设计,所以我可能会误解或忘记某些方面。请随时提高我的建议。

您的帮助是高度赞赏

卡瓦

回答

0

有是为棱镜好的快速启动模板,我发现它在博客http://blogs.msdn.com/b/dphill,所以它看起来相当不错,我用它也创建了RIA服务库,所以现在一切都分开了:

1)WEb项目 2)Ria服务在网络上 3)生成RiaService客户端代码作为独立和共享程序集,它被模块使用。而已。

+0

谢谢队友。是的,我已经发布了上面的相同链接。 ;)确实是一个很好的资源。 – Houman 2011-03-02 09:30:54