OData is an OASIS standard for creating and consuming RESTful APIs. The OData .NET libraries help users to build and consume OData v4 services.
To build an OData V4 service, start by following:
“Build an OData v4 Service with RESTier Library” for a turn-key experience, or if you are a data developer.
“Build an OData v4 Service with OData WebApi Library” if you get used to MVC pattern, or you are a web developer.
To build an OData V4 client application to consume OData v4 Service, start by following:
- Core libraries
- ODataLib, namespace
Microsoft.OData.Core. It contains classes to serialize, deserialize and validate OData JSON payloads (source code | binary | tutorial).
- EdmLib, namespace
Microsoft.OData.Edm. It contains classes to represent, construct, parse, serialize and validate entity data models (source code | binary | tutorial).
- Microsoft.Spatial, namespace
Microsoft.Spatial. It contains classes and methods that facilitate geography and geometry spatial operations (source code | binary | tutorial).
- ODataLib, namespace
Web API OData, namespace for <= 6.x
System.Web.OData. Starting with 7.0, the library ships as two binaries, one for .NET Framework (namespace
Microsoft.AspNet.OData) and one for .NET Core (namespace
Microsoft.AspNetCore.OData). It contains everything you need to create OData v4.0 endpoints using ASP.NET Web API and to support OData query syntax for your web APIs (source code | .NET Framework binary | .NET Core binary | tutorial).
Microsoft.Restier. RESTier is a RESTful API development framework for building standardized, OData V4 based RESTful services on .NET platform. It can be seen as a middle-ware on top of Web API OData. RESTier provides facilities to bootstrap an OData service like what WCF Data Services (which is sunset) does, beside this, it supports to add business logic in several simple steps, has flexibily and easy customization like what Web API OData do. It also supports to add additional publishers to support other protocols and additional providers to support other data sources. It is currently a preview version (source code | binary | tutorial).
- OData Client for .NET, namespace
Microsoft.OData.Client. It contains LINQ-enabled client APIs for issuing OData queries and consuming OData JSON payloads (source code | binary | tutorial).
OData Client Code Generator. An item template that simplifies the process of accessing OData v4 services by generating C# and VB.Net client-side proxy classes. It works with Visual Studio 2010, 2012, 2013 and 2015. (download | tutorial).
OData Connected Service. An item template that simplifies the process of accessing OData v3 and v4 services by generating C# client-side proxy classes. It works with Visual Studio 2015 only. (download | tutorial).
We’re using NDepend to analyze and increase code quality.