写点什么

动态 C#实战

  • 2008-11-12
  • 本文字数:470 字

    阅读完需:约 2 分钟

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

2008-11-12 06:49758
用户头像

发布了 88 篇内容, 共 267.2 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

直播回顾 | 张乐、何勉、余伟、任晶磊共议研发效能的破局之道

思码逸研发效能

听 GPT 讲 client-go 源代码 (16)

fliter

CAS单点登录协议:让用户体验更便捷的身份验证方式

权说安全

身份认证 单点登录

好用的云盘本地加载工具:CloudMounter mac

Rose

Garden Planner园林设计: 让您的绿意梦想照进现实!

Rose

水杉Metasequoia 4:开启全新的三维建模时代

Rose

亲测可用!Acrobat Pro DC 2023中文破解版 Mac/win

Rose

教你如何判断Java代码中异步操作是否完成

华为云开发者联盟

Java 开发 华为云 华为云开发者联盟 异步操作

如何在mac电脑上运行Windows应用?

Rose

Pydantic:Python 数据验证库的新宠

测试人

Python 软件测试 自动化测试 测试开发

Pydantic:Python 数据验证库的新宠

测吧(北京)科技有限公司

测试

PhpStorm 2023 3.4最新激活码分享 附PhpStorm安装激活教程

Rose

Pydantic:强大的Python 数据验证库

霍格沃兹测试开发学社

听 GPT 讲 client-go 源代码 (15)

fliter

在Linux操作系统中,如何解决软件依赖关系?

小魏写代码

AnyTrans 8 for mac:安全快速地跨平台数据管理传输工具

Rose

Character Animator 2024 (Ch2024角色动画设计软件) Mac/win

Rose

FxFactory 8 Pro视觉效果插件:从粒子系统到3D动画

Rose

免费好用的菜单栏Cpu可视化监测工具:跑猫RunCat for mac

Rose

喜报 | 思码逸 DevInsight 通过DaoCloud兼容性互认证

思码逸研发效能

动态C#实战_SOA_Jonathan Allen_InfoQ精选文章