50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

OData v3 与 WCF Data Services 5.x 简介

  • 2013-01-13
  • 本文字数:756 字

    阅读完需:约 2 分钟

如果使用.NET 构建新的 Web Services,那么 OData 就应该处于很重要的位置,特别是在需要支持未知的第三方应用时更是如此。该技术本身支持 SOAP 与 REST 风格的消息,对于后者又提供了 ATOM(XML)与 JSON 表示。这意味着使用者可以请求最适合自身的格式。

一个不错的起始点是 Mohamad Halabi 的文章 Understanding OData v3 and WCF Data Services 5.x 。这篇文章超越了传统的快速指南,重点关注于通信协议本身。

关于 WCF Data Services(微软的 OData 实现)的一个常见误解是它被绑定到了其 ORM Entity Framework 上。Mohamad 的文章中则介绍了公开一个非 EF 数据源的做法。对于静态数据来说,这就像是通过调用 List.AsQuerable 公开一套 IQueryable 属性一样简单。微软称其为 Reflection Provider

对于更加复杂的场景,你需要参考 MSDN 上的 Custom Data Service Providers 页面。它包含了你需要实现的各种接口的链接及一篇同名文章。但遗憾的是,很多接口的文档都不太完善。

在创建 OData 服务时,你需要知道一些兼容性问题。幸好,Mohamad 还介绍了 OData V2 与 OData V3 之间的差别。你主要应该关注如何注册 JSONMessageInspector 以及 JSON 与 JSON Light 之间的差别(后者去掉了很多 OData 元数据)。

WCF Data Services 主要用于提供 CRUD 式的服务,即创建、读取、更新与删除操作。你还可以公开 RPC 风格的服务,比如说 ProcessInvoice 方法。这是通过 WebGet 与 WebInvoke 属性实现的。但遗憾的是,这要比一般的 WCF 服务多了很多限制,比如说“每个参数都必须是原生类型”。 Service Operations 页面对其进行了详尽的介绍。

修改与查询拦截器可用于重写CRUD 式的请求。使用附加的验证与安全检查来阻止操作,通过错误消息告知你希望执行的其他操作。

查看英文原文: Getting Started with OData v3 and WCF Data Services 5.x

2013-01-13 12:301977
用户头像

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

关注

评论

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

精选算法面试-哈希表III

李孟聊AI

面试 算法

甲方日常 89

句子

工作 随笔杂谈 日常

开发质量提升系列:checklist 投产检查列表(下)

罗小龙

代码质量 28天写作 checklist

产品经理训练营作业 01

KingSwim

2021,你值得看的华为/字节/腾讯/京东/网易/滴滴面经分享

比伯

Java 编程 架构 面试 计算机

第二周作业-利益相关方

Au revoir

产品 0 期 - 第二周作业

vipyinzhiwei

产品经理训练营

Android硬编解码MediaCodec使用笔记

Changing Lin

android 音视频

Serverless应用开发小记

zFish

DevOps AWS IaC #Serverless Terraform

CSS(三)——简单的网页制作

程序员的时光

CSS 七日更 28天写作

spring中那些让你爱不释手的代码技巧(续集)

Java架构师迁哥

同VLAN不同网段能否ping通

第九周作业&总结

胡益

项目管理文化建设

Ian哥

28天写作

批判性思维自修课(二)

石君

28天写作 批判性思维

产品经理训练营 - 第二次作业

Jophie

产品经理训练营

28天瞎写的第二百二十八天:用 UltraEdit 找优越感的故事

树上

28天写作 UltraEdit

第四课作业

糯米~

静下心来

阿萌

程序人生 28天写作 青城

Logi-KafkaManager开源之路:一站式Kafka集群指标监控与运维管控平台

张亮

Java 大数据 kafka 开源 消息队列

基于Serverless实现静态博客访问统计功能

zFish

Serverless AWS Hugo Pulumi

CSS(四)——CSS高级特性

程序员的时光

CSS 程序员 七日更 28天写作

第二章作业

Deborah

Flink 中极其重要的 Time 与 Window 详细解析(深度好文,建议收藏)

五分钟学大数据

大数据 flink

范文写作结构分析之“危险的分工”

JiangX

28天写作

【shell命令】关于mac的open命令

程序员架构进阶

工具 Shell 命令行 28天写作

没有女友的建议,不会有这家巨头公司

李忠良

28天写作

产品经理训练营-第二周学习总结

月亮 😝

产品质量战略

L3C老司机

微信视频号的长视频和短视频 | 视频号28天(18)

赵新龙

28天写作

汽车AI芯片(28天写作 Day18/28)

mtfelix

自动驾驶 28天写作 车规级芯片

OData v3与WCF Data Services 5.x简介_REST_Jonathan Allen_InfoQ精选文章