The Location header for HTTP 201 supports relative URIs, but the current code for ApiController.Created (which takes a string URI) does not.
Comments: Of course that works, but it's unnecessary overhead, given that both absolute and relative URIs are legal for the Location header. It's ugly and unnecessary to force the developer to make their own Uri objects when you offer an overload to do that for them anyway. Frankly, I'm not sure why there's any consternation over this one line fix. One of your overloads rejects perfectly legal values; that, to me, is a bug, and with no good justification.
Comments: Of course that works, but it's unnecessary overhead, given that both absolute and relative URIs are legal for the Location header. It's ugly and unnecessary to force the developer to make their own Uri objects when you offer an overload to do that for them anyway. Frankly, I'm not sure why there's any consternation over this one line fix. One of your overloads rejects perfectly legal values; that, to me, is a bug, and with no good justification.