Classes to serialize, deserialize and validate OData payloads. Enables construction of OData producers and consumers.
Targets .NET 4.0 or Silverlight 4.0.
Localized for CHS, CHT, DEU, ESN, FRA, ITA, JPN, KOR and RUS.
|Advisory: https://github.com/advisories/GHSA-mv2r-q4g5-j8q5||Severity: high|
See the version list below for details.
Install-Package Microsoft.Data.OData -Version 5.4.0
dotnet add package Microsoft.Data.OData --version 5.4.0
<PackageReference Include="Microsoft.Data.OData" Version="5.4.0" />
paket add Microsoft.Data.OData --version 5.4.0
#r "nuget: Microsoft.Data.OData, 5.4.0"
// Install Microsoft.Data.OData as a Cake Addin #addin nuget:?package=Microsoft.Data.OData&version=5.4.0 // Install Microsoft.Data.OData as a Cake Tool #tool nuget:?package=Microsoft.Data.OData&version=5.4.0
Client deserialization/serialization hooks
We have a number of investments planned in the “request pipeline” area. In 5.4.0 we have a very big set of hooks for reaching into and modifying data as it is being read from or written to the wire format. These hooks provide extensibility points that enable a number of different scenarios such as modifying wire types, property names, and more.
Instance annotations on atom payloads
As promised in the 5.3.0 release notes, we now support instance annotations on Atom payloads. Instance annotations are an extensibility feature in OData feeds that allow OData requests and responses to be marked up with annotations that target feeds, single entities (entries), properties, etc. We do still have some more work to do in this area, such as the ability to annotate properties.
Client consumption of instance annotations
Also in this release, we have added APIs to the client to enable the reading of instance annotations on the wire. These APIs make use of the new deserialization/serialization pipelines on the client (see above). This API surface includes the ability to indicate which instance annotations the client cares about via the Prefer header. This will streamline the responses from OData services that honor the odata.include-annotations preference.
Simplified transition between Atom and JSON formats
In this release we have bundled a few less-noticeable features that should simplify the transition between the Atom and (the new) JSON format. (See also the bug fixes below on type resolver fixes.)
In addition to the features above, we have included fixes for the following notable bugs:
- Fixes an issue where reading a collection of complex values would fail if the new JSON format was used and a type resolver was not provided
- Fixes an issue where ODataLib was not escaping literal values in IDs and edit links
- Fixes an issue where requesting the service document with application/json;odata=nometadata would fail
- Fixes an issue where using the new JSON format without a type resolver would create issues with derived types
- (Usability bug) Makes it easier to track the current item in ODataLib in many situations
- Fixes an issue where the LINQ provider on the client would produce $filter instead of a key expression for derived types with composite keys
- (Usability bug) Fixes an issue where the inability to set EntityState and ETag values forced people to detach and attach entities for some operations
- Fixes an issue where some headers required a case-sensitive match on the WCF DS client
- Fixes an issue where 304 responses were sending back more headers than appropriate per the HTTP spec
- Fixes an issue where a request for the new JSON format could result in an error that used the Atom format
- Fixes an issue where it was possible to write an annotation value that was invalid according to the term
- Fixes an issue where PATCH requests for OData v1/v2 payloads would return a 500 error rather than 405
NuGet packages (228)
Showing the top 5 NuGet packages that depend on Microsoft.Data.OData:
LINQ-enabled client API for issuing OData queries and consuming OData payloads. Supports OData v3. Targets .NET 4.0, Silverlight 4.0 or .NET Portable Lib with support for .NET 4.5, Win Phone 8, Win Phone 8.1, and Win 8. Localized for CHS, CHT, DEU, ESN, FRA, ITA, JPN, KOR and RUS.
Microsoft Azure Blob storage support as key store. This library has been replaced by the following new Azure SDK. https://www.nuget.org/packages/Azure.Extensions.AspNetCore.DataProtection.Blobs It is recommended that you move to the new package. This package was built from the source code at https://github.com/aspnet/AspNetCore/tree/b908e913e3befcfe241f3294509e6d9570acc07b
This package contains everything you need to create OData endpoints using ASP.NET Web API and to support OData query syntax for your web APIs.
This is the .NET Client Library for Microsoft Azure Active Directory Graph API. Learn more about Azure AD Graph API @ https://msdn.microsoft.com/Library/Azure/Ad/Graph/howto/azure-ad-graph-api-operations-overview. NOTE: Azure AD Graph API functionality is also available through Microsoft Graph, a unified API that also includes APIs from other Microsoft services like Outlook, OneDrive, OneNote, Planner, and Office Graph, all accessed through a single endpoint with a single access token. Find out more about Microsoft Graph @ http://graph.microsoft.com, and find the Microsoft Graph .Net Client Library @ https://www.nuget.org/packages/Microsoft.Graph and the open source code and further documentation @ https://github.com/microsoftgraph/msgraph-sdk-dotnet Usage information is available on our AAD Graph blog @ http://blogs.msdn.com/b/aadgraphteam/archive/2014/12/12/announcing-azure-ad-graph-api-client-library-2-0.aspx and sample usage on github @ https://github.com/AzureADSamples/WebApp-GraphAPI-DotNet and https://github.com/AzureADSamples/ConsoleApp-GraphAPI-DotNet.
Simple.OData.Client is a multiplatform OData client library supporting .NET 4.x, .NET Standard, .NET Core, iOS and Android. The adapter provides a great alternative to WCF Data Services client. It does not require generation of context or entity classes and fits RESTful nature of OData services. The package Simple.OData.Client contains libraries that can work with OData feeds that implement both V1-3 and V4 OData protocol. Packages Simple.OData.V3.Client and Simple.OData.V4.Client have smaller footprints and target V1-3 and V4 respectively.
GitHub repositories (113)
Showing the top 5 popular GitHub repositories that depend on Microsoft.Data.OData:
.NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
Experience, Learn and Code the latest breakthrough innovations with Microsoft AI
Store securely encrypted backups in the cloud!
The open source diagnostics platform for the web
SharePoint / Office 365 Developer Patterns and Practices - Archived older solutions. Please see https://aka.ms/m365pnp for updated guidance