• Stars
    star
    468
  • Rank 93,248 (Top 2 %)
  • Language
    C#
  • License
    Other
  • Created almost 10 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A turn-key library for building RESTful services

Microsoft Restier - OData Made Simple

Releases   |   Documentation   |   OData v4.01 Documentation

Build Status Release Status Nightly Feed
Code of Conduct Twitter

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 boostrap a standardized, queryable HTTP-based REST interface in literally minutes. And that's just the beginning.

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 Feb 2014.

Getting Started

Now that the project has restarted, we have a new location for our Continuous Integration builds. We've simplified the NuGet packages as well, so now you can just reference Microsoft.Restier.AspNet or Microsoft.Restier.AspNetCore (coming soon) packages, and we'll take care of the rest.

Use Cases

Coming Soon!

Supported Platforms

Restier 1.0 currently ships with support for Classic ASP.NET 5.2.7 and later. Support for .NET 5 and later is coming in the second half of 2021.

Restier Components

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.
  • Microsoft.Restier.Breakdance: Unit test Restier services and components in-memory without spnning up a separate IIS instance.

Ecosystem

Restier is used in solutions from:

There is also a growing set of tools to support Restier-based development

Community

After a couple years in statis, Restier is in active development once again. The project is lead by Robert McLaws and Mike Pizzo.

Weekly Standups

The core development team meets twice a month on Microsoft Teams 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.

Reporting Security Issues

Security issues and bugs should be reported privately, via email, to the Microsoft Security Response Center (MSRC) [email protected]. You should receive a response within 24 hours. If for some reason you do not, please follow up via email to ensure we received your original message. Further information, including the MSRC PGP key, can be found in the Security TechCenter. You can also find these instructions in this repo's SECURITY.md.

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:

Microsoft External
Lewis Cheng Cengiz Ilerler
Challenh Kemal M
Eric Erhardt Robert McLaws
Vincent He Jan-Willem Spuij
Dong Liu Chris Woodruff
Layla Liu
Fan Ouyang
Mike Pizzo
Congyong S
Mark Stafford
Ray Yao

More Repositories

1

WebApi

OData Web API: A server library built upon ODataLib and WebApi
C#
854
star
2

odata.net

ODataLib: Open Data Protocol - .NET Libraries and Frameworks
C#
677
star
3

AspNetCoreOData

ASP.NET Core OData: A server library built upon ODataLib and ASP.NET Core
C#
358
star
4

ODataSamples

Samples: For ODataLib, OData Web API, RESTier, etc.
C#
290
star
5

OData.Neo

C#
108
star
6

odatapy-client

OData Python client
C++
89
star
7

ODataConnectedService

A Visual Studio extension for generating client code for OData Services
C#
70
star
8

OData4ObjC

OData client for iOS.
Objective-C
69
star
9

odataorg.github.io

Staging site and collaboration repository for http://www.odata.org
HTML
60
star
10

lab

This repository is for exploring new ideas and developing early prototypes of various OData stacks.
C#
48
star
11

odatacpp-client

OData C++ Client Libraries
C++
44
star
12

odatacpp-server

OData C++ Server Libraries
C++
32
star
13

model-first

Model-first tooling
JavaScript
28
star
14

ModelBuilder

A project to generate Edm (Entity Data Model) from CLR types
C#
19
star
15

ValidationTool

Enable OData service authors ensure that their service interoperates well with any OData client.
C#
19
star
16

odata.github.io

Documentation source of Microsoft OData stack.
CSS
12
star
17

vocabularies

OData vocabulary definitions and usage
11
star
18

v3ProtocolDocument

Short-lived project to collaboratively edit the OData v3 protocol document.
Shell
11
star
19

Extensions

ExtensionsLib: - Extensions for OData libraries and framework
C#
10
star
20

WebApiAuthorization

C#
9
star
21

RequestBuilder

REST Request builder for OData services
5
star
22

Home

This is the Home repository for discussion, design spec, feedback, Q&A of OData related.
1
star
23

OData4Soda

OData service that translates calls into calls against an underlying SODA service.
1
star