使用Web API返回匿名类型
使用MVC时,返回即席Json很容易。
return Json(new { Message = "Hello"});
我正在使用新的Web API寻找此功能。
public HttpResponseMessage<object> Test(){
return new HttpResponseMessage<object>(new { Message = "Hello" }, HttpStatusCode.OK);
}
由于DataContractJsonSerializer
无法处理匿名类型,因此引发了异常。
我有这个替换此JsonNetFormatter基于
Json.Net 。如果我使用这行得通
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
?
回答:
这在Beta版本中不起作用,但在最新版本(从http://aspnetwebstack.codeplex.com构建)中起作用,因此,这很可能是RC的方式。你可以做
public HttpResponseMessage Get(){
return this.Request.CreateResponse(
HttpStatusCode.OK,
new { Message = "Hello", Value = 123 });
}
以上是 使用Web API返回匿名类型 的全部内容, 来源链接: utcz.com/qa/408295.html