Resources Over MVC
Resources Over MVC provides extensions for ASP.Net MVC to support the typical features of a REST web service. These include support for multiple representations, encodings and a number of ways of overloading POST. Regardless of your opinion of what makes a RESTful service, these can help.
Resources Over MVC is not meant to be prescriptive about what constitutes a RESTful web service, there are plenty of opinions out on the web regarding that matter! In fact it was deliberately not called "Rest Over MVC" to avoid the assumption that using this assembly would magically mean your web service was RESTful. For that you will need to do some reading around, design your resources and decide what
you think constitutes a RESTful web service. Hopefully you'll find that the set of helper atributes and extensions in this assembly are not too opinionated, but you should be able to use them to provide the following features:
- Serve and Receive multiple representations of resources (e.g. XML and JSON)
- Support different encodings
- Support a constrained number of methods
- Allow representations to include hyper links
Obviously, as this approach is based on ASP.Net, it is providing a web service over the HTTP protocol, so it does make use of standard:
- HTTP headers
- HTTP methods
- HTTP status codes
If you want to look into some of the history of the code I described the intial development on the
Shoulders of Giants blog. The easiest way to add ROM to your projects is to use the
NuGet package.