Returning anonymous types with Web API Returning anonymous types with Web API json json

Returning anonymous types with Web API


This doesn't work in the Beta release, but it does in the latest bits (built from http://aspnetwebstack.codeplex.com), so it will likely be the way for RC. You can do

public HttpResponseMessage Get(){    return this.Request.CreateResponse(        HttpStatusCode.OK,        new { Message = "Hello", Value = 123 });}


This answer may come bit late but as of today WebApi 2 is already out and now it is easier to do what you want, you would just have to do:

public object Message(){    return new { Message = "hello" };}

and along the pipeline, it will be serialized to xml or json according to client's preferences (the Accept header). Hope this helps anyone stumbling upon this question


In web API 2 you can use the new IHttpActionResult which is a replacement for HttpResponseMessage and then return a simple Json object: (Similiar to MVC)

public IHttpActionResult GetJson()    {       return Json(new { Message = "Hello"});    }