动态C#实战

探讨了C#4如何通过动态类型改进RESTful Web服务的调用体验,使之与Ruby和Python等动态语言一样便捷。介绍了动态Rest项目如何为C#开发者提供更简洁的语法,并展示了使用C#4调用Amazon和Flickr服务的例子。

REST式的web service调用要比基于SOAP的调用更具优势,因为它无需工具的支持。这使得一些语言如Ruby和Python可以很轻松地对其进行调用。不幸的是,C#却做不到这一点,因为缺少必要的支持。

\

造成这种差别的原因在于动态类型。像Ruby和Python这样的语言可以直接将JSON和基于XML的结果转化为对象模型。接下来每种语言都可以使用其标准的方法和属性语法来访问该对象了。对于像C#这样的语言来说,如果事先不知道对象是什么样子的话是无法进行这种映射的。因此,我们不得不编写必要的类和解析逻辑,而这个过程实在乏味且容易出错。

\

借助C# 4,这一切都烟消云散了。通过将其与Nikhil Kothari的动态Rest项目进行整合,C#和VB开发者可以获得动态语言开发者所拥有的那种干净的语法。因为这还是基于早期预览版,所以还有一些限制。

\
注意到在CTP中还不支持动态类型索引,这违背了正常的数组语法。因此在其上使用了Item()。然而,我被告知在随后的构建中已经加入了对动态类型索引的支持。
\

在随后的帖子中,Nikhil介绍了使用C# 4调用Amazon和Flickr服务。
查看英文原文:Dynamic C# in Action

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值