kenwarner
kenwarner

Reputation: 29120

Request.CreateResponse vs returning POCOs in ASP.NET Web API

I see a lot of samples on the web for ASP.NET Web API that use Request.CreateResponse to generate responses. If you create a new Web API project in Visual Studio, the default API controllers return IEnumerable<string> or string. What's the difference in usage?

Upvotes: 1

Views: 686

Answers (2)

Darrel Miller
Darrel Miller

Reputation: 142222

Returning a HttpResponseMessage allows you to control all different aspects of the returned HTTP response directly. If you return a POCO you have to hope that the framework does what you want. And maybe it will, and maybe it won't.

Upvotes: 2

Zack Yang
Zack Yang

Reputation: 399

Request.CreateResponse can generate other http message, ex.404,500. If just return,the http message will be 200 OK.

In my code, if get need authorized, I will return like this:

throw new HttpResponseException(HttpStatusCode.Unauthorized);

write this,you unnecessary change the return value.

Upvotes: 0

Related Questions