在使用MVC时,返回临时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
中返回匿名类型吗?