我们目前正在讨论是使用RIA服务还是使用简单的WCF服务作为Silverlight的外观层.
选项:
RIA服务和生成的代码:RIA services将在Silverlight项目中自动创建Domain Model和Domainservices的代理类.
这意味着我们的服务需要从Domainservice类继承,并且需要很多工作和变通方法来允许我们的自定义模型正常序列化(因为我们不使用EF)
WCF和共享库:我们将创建一个将在Silverlight和我们的服务器代码(as offered here)之间共享的DomainModel库,让我们更好地控制我们的域类的外观,以及它们在Silverlight上的显示方式,以及我们的服务保持干净,因为WCF不要求我们使用任何基类,并且让我们对我们的服务暴露方式给予更多的权力.
所以问题是 – 鉴于我们不使用EF,RIA服务的专业人员是什么,以及使用WCF和共享域的关键是什么?
我观点的主要优点和缺点:
RIA服务
> Pro:即使不使用实体框架,开发也会更快.您可以创建viewmodel,也可以使用AutoMapper映射它们,并指定验证/数据输入/关系所需的属性.即使使用实体框架,这也是很好的做法.
>骗局:很多开销.
> Con:发送大量数据时性能下降(类似于> 100个对象)
WCF和共享库
>专业:性能相对优异
> Con:开发时间/可维护性不如rIA services.
> Con:没有DomainDatasource也不能使用数据绑定(即使使用MVVM).
更新
对于数据绑定部分:RIA services允许Silverlight中的DomainDatasource控件.这使得能够轻松(异步)加载其状态(Busy等)的可绑定属性,这使得加载动画和一般改进用户体验变得容易.这当然可以在没有这种控制的情况下完成,但它有所帮助.
对于RIA服务性能,我似乎无法找到这个例子(这里有人说他们因为无法满足的响应时间而丢失了几个月的开发时间,将域服务重写为传统的WCF服务).
关于Silverlight(业务应用程序)的另一个注意事项:尝试将浏览器缩放到110%或90%,某些任意百分比.由于渲染的工作方式,字体/组件将变得模糊.我已经在多台机器/配置上确认了这一点,并且没有找到修复/解决方法.捕捉设备像素对此毫无帮助.
在您做出决定之前,考虑MVC3可能也很聪明,JQuery和HTML5可作为您的解决方案的一个选项. HTML布局系统可能不如Silverlight,但有跨平台和移动支持等优点.
以上是大佬教程为你收集整理的silverlight – RIA服务比. WCF和共享代码全部内容,希望文章能够帮你解决silverlight – RIA服务比. WCF和共享代码所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。