Como acessar o objeto atual HttpRequestMessage globalmente?

Eu tenho um método que cria um HttpResponseMessage contendo um objeto de erro que será retornado com base no formatador de tipo de mídia de solicitação atual.

Atualmente, eu codifiquei o XmlMediaTypeFormatter, mas gostaria de poder encontrar a solicitação atual MediaTypeFormatter em tempo de execução, mas não tenho acesso ao objeto de solicitação atual, pois meu código abaixo existe em uma biblioteca de classes separada.

private HttpResponseMessage Create(HttpStatusCode statusCode, string errorCode, string errorMessage)
{
    var result = new HttpResponseMessage(statusCode)
        {
            Content = new ObjectContent<Error>(new Error()
            {
                Code = errorCode,
                Message = errorMessage
            }, new XmlMediaTypeFormatter())
        };
    return result;
}

Como acessar o objeto atual HttpRequestMessage globalmente? algo como HttpContext.Current.Request

Se impossível, como implementar o método acima para que ele saiba qual formatador deve estar usando para a solicitação atual?

questionAnswers(2)

yourAnswerToTheQuestion