Вы можете создать собственную реализацию IHttpActionResult
, в которой вы устанавливаете заголовок:
public class StatusCodeWithLocationResult : IHttpActionResult
{
private readonly StatusCodeResult _result;
private readonly Uri _location;
public StatusCodeWithLocationResult(StatusCodeResult result, Uri location)
{
_result = result;
_location = location;
}
public async Task<HttpResponseMessage> ExecuteAsync(CancellationToken cancellationToken)
{
var response = await _result.ExecuteAsync(cancellationToken).ConfigureAwait(false);
response.Headers.Location = _location;
return response;
}
}
, а затем используете его:
return new StatusCodeWithLocationResult(StatusCode(HttpStatusCode.Accepted), myUri);