如果要返回Json数据,则可以使用返回HttpResponseMessage对象的方式。
public HttpResponseMessage Get(string id)
{
HttpResponseMessage response = new HttpResponseMessage();
string data=XXXService.Get(id); //get data by Service
string jsonStr=JsonConvert.Serialize(data);
response.Content = new StringContent(resStr,System.Text.Encoding.UTF8, "application/json");
response.StatusCode=....//设置状态码
return response;
}
以下方式直接返回Json序列化结果不行。
//不要这样的返回Json字符串
public string Get(string id)
{
//get data in Json Format here
var data=XXXService.Get(id);
return JsonConvert.Serialize(data); //不要这么做,否则客户端通过JsonConvert.DeserialzieObject<T>(receivedStr)可能失败
}