Skip to main content

Microsoft Restier - OData Made Simple

What is Restier?

Restier is an API development framework for building standardized, OData V4 based RESTful services on .NET. Restier is the spiritual successor to WCF Data Services. Instead of generating endless boilerplate code with the current Web API + OData toolchain, RESTier helps you bootstrap a standardized, queryable HTTP-based REST interface in literally minutes.
Like WCF Data Services before it, Restier provides simple and straightforward ways to shape queries and intercept submissions before and after they hit the database. And like Web API + OData, you still have the flexibility to add your own custom queries and actions with techniques you’re already familiar with.

What is OData?

OData stands for the Open Data Protocol. OData enables the creation and consumption of RESTful APIs, which allow resources, defined in a data model and identified by using URLs, to be published and edited by Web clients using simple HTTP requests.
OData was originally designed by Microsoft to be a framework for exposing Entity Framework objects over REST services. The first concepts shipped as “Project Astoria” in 2007. By 2009, the concept had evolved enough for Microsoft to announce OData, along with a larger effort to push the format as an industry standard.
Work on the current version of the protocol (V4) began in April 2012, and was ratified by OASIS as an industry standard in February 2014.

Getting Started

Now that the project has restarted, we have a new location for our [Continuous Integration builds][nightly-feed]. We’ve simplified the NuGet packages as well, so now you can just reference the following packages and we’ll take care of the rest:
dotnet add package Microsoft.Restier.AspNet

Use Cases

Coming Soon!

Supported Platforms

Restier 1.0 currently ships with support for Classic ASP.NET 5.2.3 and later. Support for ASP.NET Core 2.2 is coming in the first half of 2019.

Restier Components

  • ASP.NET
  • ASP.NET Core
The Classic ASP.NET flavor of Restier is made up of the following components:
  • Microsoft.Restier.AspNet: Plugs into the OData/WebApi processing pipeline and provides query interception capabilities.
  • Microsoft.Restier.Core: The base library that contains the core convention-based interception framework.
  • Microsoft.Restier.EntityFramework: Translates intercepted queries down to the database level to be executed.

Ecosystem

Restier is used in production solutions from:
There is also a growing set of tools to support Restier-based development:

Community

After a couple years in stasis, Restier is in active development once again. The project is led by Robert McLaws and Chris Woodruff.

Weekly Standups

The core development team meets once a week on Google Hangouts to discuss pressing items and work through the issues list. A history of those meetings can be found in the Wiki.

Contributing

If you’d like to help out with the project, our Contributor’s Handbook is also located in the Wiki.

Contributors

Special thanks to everyone involved in making RESTier the best API development platform for .NET. The following people have made various contributions to the codebase:
MicrosoftExternal
Lewis ChengCengiz Ilerler
ChallenhKemal M
Eric ErhardtRobert McLaws
Vincent He
Dong Liu
Layla Liu
Fan Ouyang
Congyong S
Mark Stafford
Ray Yao