У меня есть метод, который создает HttpResponseMessage, содержащий объект Error, который будет возвращен на основе форматера текущего типа запроса.
В настоящее время я жестко закодировал XmlMediaTypeFormatter, но мне бы хотелось найти текущий запрос MediaTypeFormatter во время выполнения, но у меня нет доступа к текущему объекту запроса, так как мой ниже код существует в отдельной библиотеке классов.
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;
}
Как получить доступ к текущему объекту HttpRequestMessage глобально? что-то вроде HttpContext.Current.Request
Если это невозможно, как реализовать описанный выше метод, чтобы он знал, какой форматтер он должен использовать для текущего запроса?