【发布时间】:2011-01-09 11:05:55
【问题描述】:
从那时起,我一直在阅读和研究,但仍在努力创建完美的基础架构。由于没有这样的 Prism 4.0 模板,我想出了一个策略,但我需要确保这是正确的策略,我希望有经验的 PRISM/RIA 开发人员提供建议。
我使用 PRISM 4.0、RIA Services 1.0 Sp1 Beta、Silverlight 4.0、Entity Framework 4.0
1) 客户端
我首先创建了一个“Silverlight 业务应用程序”,它创建了一个 Web.host 和一个具有实施 RIA 授权的 Silverlight 客户端应用程序。最初创建的 Silverlight 客户端应用程序应用作 Shell 项目。
2) 基础设施项目(普通)
该项目将包含一些常见的 Prism MEF 属性,也许还有由 RIA 自动生成的实体模型以及服务接口。这个想法是创建一个简单的 Silverlight 类库,在项目的属性下,我将选择下拉菜单“WCF Ria Services Link”以指向包含 Ria 服务的 host.Web 项目。然后在重建之后,我可以看到类库中的实体模型,然后可以在 prism 模块之间共享这些模型,以提供它们的 ViewModel 等。
3) 服务层
我应该在 Web.host 项目上创建 EF4 模型并在其中添加域服务吗?然后我会从域服务中提取一个接口并将该接口放入基础设施(公共)项目中。因此,Web.Host 需要引用 Infrastructure(common)项目才能访问接口。在客户端,MEF 可以使用该接口来检索或模拟服务。但是,我担心引用一个公共项目的服务,该项目还包含客户端生成的实体。
4) 授权
也有点担心授权,要不要全部都留在Shell项目上?还是我必须将任何内容移至基础设施(公共)项目才能共享?
由于这是我第一次使用 PRISM 进行设计,我可能误解或忘记了某些方面。请随时改进我的建议。
非常感谢您的帮助
凯夫
【问题讨论】:
标签: silverlight prism ria