WCF Data Services 与 WCF RIA Services 的比较

在最新的 VS2010 SP1 中 WCF RIA Services 被正式加入, 对于WCF的初学者来说, 这两个概念经常搞混。 都是Services究竟有什么区别呢?来看看下表:

原文 http://jack.ukleja.com/wcf-data-services-vs-wcf-ria-services/

WCF Data ServiceWCF RIA Service
通过RESTful Web Service暴露的数据模型MS提供的一种n层应用开发方式
以跨平台访问作为目标
  • 解除数据孤岛
  • 被MS未来的产品所支持,比如:SQL2008,Azure,

    Excel 2010,SharePoint 2010

专为终端到终端的Silverlight和ASP.NET设计的解决方案
  • 一些专有技术的Silverlight(不支持WPF)
  • 使用ASP.NET角色/验证
  • ASP.NET/AJAX也可以访问服务层
松耦合的客户端和服务端客户端和服务端设计部署在一起(不支持跨域)
服务层暴露出“原始”数据源可以轻松地添加业务逻辑
  • 强调"域"的概念
  • 强大的验证框架
  • 支持脱机/同步
服务可以被不同的语言平台调用:Silverlight,AJAX,PHP和Java服务可以很容易被SL,AJAX所使用
服务的数据源必须:
  • 至少暴露一个IQueryable的属性
  • 按需实现IUpdateable
服务端通过协议公开域对象:
  • IQueryable GetX
  • UpdateX/InsertX/DeleteX
  • 使用OData协议
  • 基于OData协议的多种格式:JSON,XML等
  • SL:SOAP(二进制)
  • AJAX:JSON
  • 其他客户端:SOAP(XML)
服务可被发现(Discoverable)服务不可发现
寄宿于WCF服务(.svc)

旧版本寄宿于WebApp中自定义的Web Handler(.axd),
新版本独立为WCF Service

标准化的OData协议将支持OData协议

PS:OData:开放数据协议(OData)是一个查询和更新数据的Web协议。OData应用了web技术如HTTP、Atom发布协议(AtomPub)和JSON等来提供对不同应用程序,服务和存储的信息访问。

共同特点
- 基于WCF的
- 使用REST风格的架构
- 可用于公开任何数据源(SQL,XML和POCO(plain old CLR object)/对象等)
- 客户端库(代理)可采用LINQ查询

其他
- RIA Service 并不是基于 Data Service
- RIA Service 将向 Data Service 看齐
- OData 将成为 WCF 一个基础协议

参考

http://blogs.msdn.com/brada/archive/2009/03/19/what-is-net-ria-services.aspx

http://mschannel9.vo.msecnd.net/o9/mix/09/pptx/t36f.pptx

http://blogs.msdn.com/endpoint/archive/2009/11/18/the-wcf-services-ecosystem.aspx

http://www.douglaspurdy.com/2009/11/20/on-odata-open-data-protocol/

http://msdn.microsoft.com/en-us/data/ee844254.aspx

http://blogs.msdn.com/saurabh/archive/2009/11/23/understanding-the-wcf-in-wcf-ria-services.aspx

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值