Skip to content

chinadragon0515/test

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

RESTier

1. Introduction

OData stands for the Open Data Protocol. It was initiated by Microsoft and is now an ISO and OASIS standard. OData enables the creation and consumption of REST APIs, which allow resources, identified using URLs and defined in a data model, to be published and edited by Web clients using simple HTTP requests.

RESTier is a RESTful API development framework for building standardized, OData V4 based REST services on .NET. It can be seen as a middle-ware on top of Web API OData. RESTier can provide convenience to bootstrap an OData service and add business logic in several simple steps like what WCF Data Services (which is sunset) does as well as flexibily and easy customization like what Web API OData does.

For more information about OData, please refer to the following resources:

For how to adopt this library to build OData service, please refer to the following resources:

For how to adopt .NET OData Client to consume OData service, please refer to the following resources:

Please be noted that currently RESTier is still a preview version.

2. Project structure

The project currently has two branches: master, gh-pages.

master branch

The master branch has the following libraries:

  • RESTier Core (namespace Microsoft.Restier.Core):
    The RESTier Core contains framework class like Api related logic, model builder, query summitter, convention based logic.
  • RESTier WebApi Publisher (namespace Microsoft.Restier.WebApi):
    The RESTier WebApi Publisher contains classes to handle OData specified logic with WebAPi OData library.
  • RESTier EntityFramework Provider (namespace Microsoft.Restier.EntityFramework):
    The RESTier EntityFramework Provider contains classes and methods that facilitate query summit and execute with EntityFramework library.
  • RESTier Security (namespace Microsoft.Restier.Security):
    The RESTier Security contains classes and methods for security control, it is in maintained model and ASP .NET WebAPI related security control is recommended now.

For these libraries, we accept bug reports, feature requirements and pull requests. The corresponding fixes and implementations will be included into every new release.

gh-pages branch

The gh-pages branch contains documentation source for RESTier - tutorials, guides, etc. The documentation source is in Markdown format. It is hosted at RESTier Pages.

3. Building, Testing, Debugging and Release

LocalDB v12.0 or above will be used which is part of VS2015 and no additional installation is needed. The Database will be automatically initialized by the test code if it doesn't exist.

3.1 Building and Testing in Visual Studio

Simply open the solution files under 'sln' folder and build them in Visual Studio 2015.

Here is the usage of each solution file:

  • RESTier.sln - Product source and all tests. It uses EntityFramework 6.x and built with .Net Framework version 4.5.
  • RESTier.EF7.sln - Product source and all tests. It uses EntityFramework 7.x and built with .Net Framework version 4.5.

For running tests, you need to open Visual Studio IDE as Administrator so that the test services can be started properly.

3.2 One-click build and test script in command line

Open Command Line Window with "Run as administrator", cd to the root folder and run following command:

build.cmd

The build and test will take about 4 minutes. Here are some other usages:

  • build.cmd Nightly. Build and run all nightly test suites.
  • build.cmd SkipStrongName. Configure strong name skip of RESTier libraries on your machine and build (no test run).
  • build.cmd DisableSkipStrongName. Disable strong name skip of RESTier libraries on your machine and build (no test run).

3.3 Debug

Please refer to the How to debug.

3.4 Official Release

The release of the component binaries is carried out regularly through Nuget.

4. Documentation

Please visit the RESTier pages. It has detailed descriptions on each feature provided by RESTier.

5. Community

5.1 Contribution

There are many ways for you to contribute to RESTier. The easiest way is to participate in discussion of features and issues. You can also contribute by sending pull requests of features or bug fixes to us. Contribution to the documentations is also highly welcomed. Please refer to the CONTRIBUTING.md for more details.

5.2 Support

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published