WCF Web API Preview 5 (now ASP.NET Web API)

Rating:        Based on 1 rating
Reviewed:  1 review
Downloads: 4541
Change Set: 8eae476dc836
Released: Sep 15, 2011
Updated: Feb 17, 2012 by danroth27
Dev status: Beta Help Icon

Recommended Download

Source Code Web API Prevew 5 Source
source code, 72073K, uploaded Sep 15, 2011 - 2553 downloads

Other Available Downloads

Documentation Web API Preview 5 CHM
documentation, 2037K, uploaded Sep 15, 2011 - 1988 downloads

Release Notes

Announcement: WCF Web API is now ASP.NET Web API! ASP.NET Web API released with ASP.NET MVC 4 Beta. The WCF Web API and WCF support for jQuery content on this site wll removed by the end of 2012.

Welcome to the fifth release of WCF Web API on Codeplex!

Install WCF Web API Preview 5 using NuGet

New Features/Enhancements

  • OData Formatter
  • Dependency refactoring from host common code
  • Support for Batch with mime/mixed content where every part has a full Http request
  • Web API code-based configuration (simplifications)
  • Web-based test client for WCF Web API (Introducing the WCF Web API Test Client)
  • Http File upload
  • Refactored formatters
  • Better IoC support
  • Additional samples for specific features such as file upload
  • Content negotiation now supports qualifiers
  • ActionOfStreamContent – Enables accessing the raw content stream
  • New HttpMemoryBinding to enable in-memory hosting and invoking of Web APIs

New Prototype Features (on WebAPI-Prototype branch)

  • WebApiConfiguration includes conventions for WebGet/WebInvoke
  • WebApiRoute provides better side by side integration with MVC routes
  • MapServiceRoute extension method simplified registration and usage of WebApiConfiguration
  • SetDefaultHttpConfiguration / GetDefaultHttpConfiguration extension methods enable the getting and setting of a global configuration object that will be used by default by MapServiceRoute unless a specific one is provided
  • MediaTypeFormatterCollectionExtensions.AddRange enables a more compact way to add formatters
  • FormUrlEncodingMediaTypeFormatter
  • Task<T> for Web API operations and sample

Breaking Changes

  • DelegatingChannel renamed to DelegatingHandler
  • HttpChannel renamed to HttpMessageHandler
  • FormUrlEncodingMediaTypeFormatter is moved from the default branch to the WebAPI-Prototype branch as it is not currently part of the core product source. JsonValueMediaTypeFormatter is removed as JsonValue is supported in the box.
  • IQueryable<JsonValue> is not supported. To return an array, the service should return either JsonArray or JsonValue. We are looking in to IQueryable support.
  • DelegatingHandler no longer require passing in a channel in the constructor making it more friendly to inversion of control (IoC) containers
  • New constructor overload on HttpMessageHandlerFactory overload which accepts a Func<IEnumerable<DelegatingHandler>> to allow user code or IoC containers to construct handlers.
  • IQueryable previously supported case-insensitive matches on operators. In the current drop we only will match on lowercase operators i.e. “$top” but not “$Top”. According to the spec this is correct behavior however we could relax it in the future.


Note: In the preview 4 release, Moles was required to build and run some of the unit test projects. In order to simplify the process of getting started with the Web API source, we have removed the 2 unit test projects which have a dependency on Moles from the Web API solution files. Those 2 projects (Microsoft.ApplicationServer.Http.CIT.Unit and Microsoft.Net.Http.Formatting.CIT.Unit) are available in the source code for you to explore, but they are not in the solution by default, which means that you no longer need to have Moles installed to get started.

Reviews for this release

     
The integrated test client and support for IoC is excellent. The WebApiConfiguration support makes setup of services simple and intuative.
by Oppositional on Sep 20, 2011 at 3:25 PM