本文已同步到Web API2系列文章中http://www.cnblogs.com/aehyok/p/3446289.html。 ...OData的还定义了一个方法来公开元数据有关的数据。客户端可以使用元数据来发现类型信息和关系的数据集。ASP.NET Web API OData可以很容易的创建OData终结点的数据集。...选择合适的模版进行创建项目 并命名为OData,点击确认后,在下一个Asp.Net 项目对话框中选择 Empty的空模版,并在以下对象添加文件夹和核心引用下:进行勾选Web API。...2、为OData终结点添加一个路由。 EDM是一个抽象的数据模型。...示例项目下载地址http://pan.baidu.com/s/1sjEWV** 本文参考地址http://www.asp.net/web-api/overview/odata-support-in-aspnet-web-api
前言 阅读本文之前,您也可以到Asp.Net Web API 2 系列导航进行查看 http://www.cnblogs.com/aehyok/p/3446289.html。 ...这个方法调用Web API路由过程,返回一个OData实体,展现被转换的OData路径。对于一个链接URI,这个片段数中应该有一个实体键。...将ID=2的Supplier修改为WING 请求Header POST http://localhost/odata/Products(2)/$links/Supplier Content-Type:...3、DELETE http://localhost/odata/Products(2)/$links/Supplier那么这样就可以将上面的SupplierId=WING修改为null 然后再次执行http...总结 本文所参考链接为http://www.asp.net/web-api/overview/odata-support-in-aspnet-web-api/working-with-entity-relations
开放数据协议(OData)是一个查询和更新数据的Web协议。OData应用了web技术如HTTP、Atom发布协议(AtomPub)和JSON等来提供对不同应用程序,服务和存储的信息访问。...你希望将结果捆绑在一个网格中,并对数据排序。最后,决定想要查询的东西,通过比如邮政编码来查询。 ...$top=2 http://localhost:8080/api/meetings?...$filter=MeetingDate eq datetime’2013-01-17′ 在项目中启用OData查询,首先在项目加入Web API的OData支持,通过Nuget 查找ASP.NET Web.../web-api/overview/odata-support-in-aspnet-web-api Limiting OData Query Options: http://www.asp.net/web-api
Contact Manager Web API 示例[1]CRUD 操作 已经做了一个基本的介绍, Contact Manager Web API 示例[2] Web API Routing 介绍Web...Open Data Protocal (OData) 指定查询字符串参数让 Client 能使用它去排序与过滤结果。...Web API 提供以下支持 OData 查询参数: Web API 提供支持 OData 查询参数 查询参数 说明 范例 $filter 选择与布尔表达式相符的项目 http://localhost...$skip=2 $top 传回前 n 笔元素 http://localhost:port/api/contacts?...$top=3&orderby=name 要支持这些查询选项,简单的从 GET 方法中回去 IQueryable 类型和Queryable attribute (System.Web.Http.QueryableAttribute
OData 的基本特点包括:查询语法: OData 使用类似于 URL 的查询字符串,可以进行数据过滤、排序、分页等操作。...一个典型的 OData 服务可能会提供一个用于管理客户信息的 API,客户可以通过 HTTP 请求获取、创建、更新或删除客户数据。2....Olingo 提供的功能包括:OData 请求构建与发送: Olingo 提供了一个简单的 API,可以构建和发送符合 OData 协议的请求。这意味着开发者无需手动编写复杂的查询字符串。...查询支持: 支持 OData 的查询操作,如 $filter、$orderby、$top、$skip 等,简化了客户端的数据检索。...支持多种 OData 版本: Olingo 能够支持多个版本的 OData 协议,包括 OData V2 和 OData V4,使得开发者能够在不同版本的 OData 服务间切换。3.
我们对比了 OData、GraphQL 和 ORDS 之间的区别,它们是用于通过 Internet 查询和更新数据的标准 API 和服务。...通过 Internet 查询数据的标准 API OData OData 最初由 Microsoft 于 2007 年开发,是一种 OASIS 标准 REST API,建立在 Microsoft、SAP...它允许以简单和标准的方式创建和使用可查询和可互操作的 RESTful API。OData 为您提供了一组丰富的查询功能,并因其开源方法以及出色的可扩展性而迅速获得支持。...图 2 在图 2 中,我们完成了对要考虑的其他标准的初步分析,并将在以后的文章中扩展这些领域。 标准查询能力 图 3 图 3 突出显示了通过开放标准接口访问数据的通用标准。...对于习惯于处理 Web 服务的人来说,GraphQL 也可能有点尴尬,因为为了查询数据,您不需要执行 GET 操作,这就是您从普通 REST Web 服务获取结果的方式。
这个入门文章主要演示在ASP.NET MVC3网站宿主: 如何使用NuGet向项目中添加Web Api引用 如何创建一个通过HTTP GET访问的Web Api 如何通过asp.net routes...宿主一个Web Api 如何通过浏览器或者Fiddler访问Web Api 如何在Api上启用OData uri查询 如何用WCF Web Test Client测试WCF Web API 1、创建一个基本的解决方案...2、向解决方案中加入Web Api的引用 通过NuGet来添加Web api的程序集引用,右击项目属性,选择“Manage NuGet Packages” ?...8、启用OData 查询支持 Web API支持OData协议,接受OData的URI格式查询,当OData 查询到达Web Api, 在返回客户端之前在服务端会进行必要的过滤和排序。...宿主一个Web Api 如何通过浏览器或者Fiddler访问Web Api 如何在Api上启用OData uri查询 如何用WCF Web Test Client测试WCF Web API 你可以在这里获取到代码
问题和考虑因素 问题: 在Salesforce中,如何查看、搜索和修改存储在Salesforce外部的数据,而不将数据从外部系统移动到Salesforce中?...跨组织适配器使用标准的Lightning Platform REST API。与OData不同,跨组织适配器直接连接到另一个组织,而不需要中间web服务。...服务API发出特殊数据请求以访问和更新外部系统数据。...2.适配器将操作转换为OData请求,并通过集成层和服务层向远程系统发出HTTP GET请求。 3.远程系统通过集成层和服务层向Salesforce返回JSON响应。...外部对象也可用于Apex、SOSL、SOQL查询、salesforceapi,以及通过元数据API、变更集和包进行部署。
OData开放数据协议是微软针对Google的GData推出的,旨在推广Web程序数据库格式标准化的开放数据协议,微软将 OData 定义为基于 HTTP、AtomPub 和 JSON 的协议,增强各种网页应用程序之间的数据兼容性...API 一样,不同的是,OLE DB 的API 是符合COM 标准、基于对象的(ODBC API 则是简单的C API)。...使用OLE DB API,可以编写能够访问符合OLE DB 标准的任何数据源的应用程序,也可以编写针对某种特定数据存储的查询处理程序(Query Processor)和游标引擎(Cursor Engine...在云计算时代,web应用已经是主流,程序主要通过HTTP Request来表达需求,通过HTTP Response来获取结果,ODBC和OLE DB都已无法使用。...缺乏对数据查询的控制能力,比如返回特定的数据集合的区间,或者说分页能力等等。
OData是一个非常灵活的RESTful API,如果要做出强大的查询API,那么OData就强烈推荐了。...http://www.odata.org/ OData的特点就是可以根据传入参数动态生成Entity Framework的查询,最终实现动态的SQL的查询。...在OData API查询时,用户前端是url跟参数,但是在服务器端,我们是接收到的是一个ODataQueryOptions对象,其实我们需要做的就是把这个对象进行解析,生成NHibernate能够理解的查询形式...aspnet.codeplex.com/SourceControl/changeset/view/72014f4c779e#Samples/WebApi/NHibernateQueryableSample/System.Web.Http.OData.NHibernate...其实系统给我们提供了一个专门分页返回的对象System.Web.Http.OData.PageResult,我们可以将Service返回的QueryResult封装成PageResult再返回即可
OData的理想是, 无论哪个组织构建的RESTful API,只要其符合OData标准。其他组织就可以按照OData标准中定义的方式去使用这个API获取/修改资源。...无论什么关系型数据库,如果其声称支持SQL 标准,任何人就可以使用标准SQL查询语句来查询数据。...前面说到Rest只是一种设计Web服务的思想,不是一种标准化的协议。正由于缺乏标准化,从而导致各家公布的Restful API 统一通用方面的欠缺。OData就是为弥补这种欠缺而被提出来的标准协议。...举个例子:假设A组织,B组织都实现了Restful API来通过工号查询人员信息,因为没有统一的规范。...第三步:假设存在一个可用的WebApi(后面介绍如何创建) - http://localhost:33189/Odata. 我们修改代码模板中的MetadataDocumentUri如下, 然后保存。
版本控制 版本控制的方法有很多,这里提供一种将Odata与普通web api版本控制机制统一的方法,但也可以单独控制,整合控制与单独控制主要的不同是:整合控制通过VersionControllerSelector...{ public Dictionary RouteVersionSuffixMapping { get; set; } public...versionControllerName : controllerName; } } 修改WebApiConfig.Register方法 public...,与普通Web Api版本控制 扩展DefaultHttpControllerSelector public class VersionControllerSelector : DefaultHttpControllerSelector...configuration); return selector.SelectController(request); } } } 修改
http://www.odata.org/blog/how-to-use-web-api-odata-to-build-an-odata-v4-service-without-entity-framework.../ http://www.asp.net/web-api/overview/odata-support-in-aspnet-web-api/odata-v4/create-an-odata-v4-endpoint...http://www.asp.net/web-api/overview/odata-support-in-aspnet-web-api/odata-v4/create-an-odata-v4-client-app...PM> 2.3,添加Model和控制器 按照 http://www.odata.org/blog/how-to-use-web-api-odata-to-build-an-odata-v4-service-without-entity-framework...客户端 3.1,添加OData 控制台程序 按照下面链接文章的内容,新建一个控制台程序: http://www.asp.net/web-api/overview/odata-support-in-aspnet-web-api
REST架构在现在的web应用中非常常见,它并不涉及到具体的编码,它只是一种高级比的指导方案,具体的实现还是由你自己决定。...RESTful API的例子 我们来举几个常见的RESTful API的例子,来见识一下这种架构的神奇之处: 请求一个entity: GET https://services.odata.org/TripPinRESTierService...entity的某个属性: GET https://services.odata.org/TripPinRESTierService/Airports('KSFO')/Name 使用filter进行查询:...GET https://services.odata.org/TripPinRESTierService/People?...$filter=FirstName eq 'Scott' 修改数据: POST https://services.odata.org/TripPinRESTierService/People header
1 概要 创建ASP.NET Web Api 时模板自带Help Pages框架。...2 问题 1)使用VS创建Web Api项目时,模板将Help Pages框架自动集成到其中,使得Web Api项目引入了MVC框架开发包,使得项目看起来杂乱。...2)自带的Help Pages框架无法针对Odata控制器生成API文档。...2)重构ApiExplorer,获得Odata控制器的API文档 步骤1,重构ApiExplorer public class CustomApiExplorer : ApiExplorer {...} } } } 步骤2;根据OData路由拼出api的URI 使用OdataRelativePath.GetOdataRelativePath方法修改ApiExplorer.ApiDescriptions
这是get请求最基础的参数传递方式,没什么特别好说的。 2、实体作为参数 如果我们在get请求时想将实体对象做参数直接传递到后台,是否可行呢?我们来看看。...至于还有园友们提到http://www.asp.net/web-api/overview/formats-and-model-binding/parameter-binding-in-aspnet-web-api...(1)WebApi的方法名称以get开头 $.ajax({ type: "get", url: "http://localhost:27221/api/Charging/...(2)WebApi的方法名称不以get开头 我们把之前的方法名由GetByModel改成FindByModel,这个再正常不过了,很多人查询就不想用Get开头,还有直接用Query开头的。...(2)正确的用法 $.ajax({ type: "post", url: "http://localhost:27221/api/Charging/SaveData"
从Node.js查询PostgreSQL数据 API服务器公开允许连接数据的Web服务。使用CData API服务器的OData端点对Node.js中的PostgreSQL数据执行CRUD查询。...HTTP请求从Node.js查询。...设置API服务器 按照以下步骤开始生成安全的PostgreSQL OData服务: 部署 API服务器在您自己的服务器上运行。在Windows上,您可以使用独立服务器或IIS进行部署。...从Node.js消耗PostgreSQL OData源 OData源很容易在Node.js中工作。您可以使用Node.js中的HTTP客户端从API服务器的OData端点请求JSON格式的数据。...var http = require('http'); http.get({ protocol: "http:", hostname: "MyServer.com", port: MyPort, path
这也就意味着,开发人员可以使用 REST Web技术和标准开放数据协议(OData)语法从其 SharePoint 相关应用程序、解决方案和客户端应用程序执行 CRUD 操作。...(2)$filter 参数 如 SQL 中 Where 的使用方法,这里的 $filter 是用来筛选数据的筛选条件,使用方法是:_api/web/lists/getByTitle('Books...$top=2,这样我们就会返回这个结果集中的前两项(如不足两项则返回全部数据)。 (5)$skip 参数 这个参数用于在结果集中跳过指定数量的项,而返回剩余的项。...$skip=2,这样我们就会在返回结果中跳过前两项而返回其余的项,如结果不足两项,则返回空结果集。 ...下面这张表,涵盖了 SharePoint REST API 中几乎所有的查询条件和数字、字符等的比较关键字。
一、API管理对SOAP集成的两种方法 通常情况下,API管理对web API的集成,除了RESTful Web服务之外,还需要管理基于SOAP的Web服务。...GET请求的映射将增加对诸如Stores服务的WSDL之类的资源的命中。 设置API测试GET请求: API测试GET请求:/ StoresWS?wsdl ? ?...{{.spec.host}} -n $OCP_PROJECT_PREFIX-stores-api`/allstores 输出结果是json: ?...六、OData Service Management 在本节中,我们将部署OData(开放数据协议)服务。 OData是一种标准,它定义了一组用于构建和使用RESTful API的最佳实践。...对应用发起curl,可以得到正常返回结果。 curl -k http://stock-api-$OCP_PROJECT_PREFIX.
领取专属 10元无门槛券
手把手带您无忧上云