Equivalent of Request.CreateResponse()



相当于什么

var newOrder = new OrderViewModel()
{
   Id = orderDetails.Id,
   Name = orderDetails.Service.Name,
   .....
};

Request.CreateResponse(HttpStatusCode.OK, newOrder);

采用以下格式:

HttpResponseMessage response = new HttpResponseMessage();
response.StatusCode = HttpStatusCode.OK;
response.ReasonPhrase = "successfully created blablabla";

Request.CreateResponse()中,我可以传递一个对象。我怎样才能用HttpResponseMessage做到这一点?

也希望能够传递消息(如ReasonPhrase),但不能使用 Request.CreateResponse() .或者我错过了什么。

要将对象作为响应内容传入,您可以构造ObjectContent<T>

response.Content = new ObjectContent<OrderViewModel>(newOrder, 
                                         new JsonMediaTypeFormatter())

ObjectContent的其他构造函数:

http://msdn.microsoft.com/en-us/library/hh835040(v=vs.118).aspx

最新更新