在使用 MVC 时,返回 adhoc Json 很容易。
return Json(new { Message = "Hello"});
我正在通过新的 Web API 寻找这个功能。
public HttpResponseMessage<object> Test()
{
return new HttpResponseMessage<object>(new { Message = "Hello" }, HttpStatusCode.OK);
}
这将引发异常,因为 DataContractJsonSerializer
不能处理匿名类型。
我已经取代了这个基于 Json Net的 JsonNetFormatter。 如果我用
public object Test()
{
return new { Message = "Hello" };
}
但是如果我不返回 HttpResponseMessage
,我就看不到使用 Web API 的意义,我最好还是坚持使用普通的 MVC。如果我尝试使用:
public HttpResponseMessage<object> Test()
{
return new HttpResponseMessage<object>(new { Message = "Hello" }, HttpStatusCode.OK);
}
它序列化了整个 HttpResponseMessage
。
有没有人能给我一个解决方案,让我可以在 HttpResponseMessage
中返回匿名类型?