WebApi возвращает сериализованный HttpResponseMessage вместо text / html - PullRequest
0 голосов
/ 27 августа 2018

Я не могу понять это, потому что, если я начну новый проект WebApi, это будет прекрасно работать. Но в моем существующем приложении оно работает не так. Я динамически строю HTML и возвращаюсь. Код ниже:

var response = new HttpResponseMessage(HttpStatusCode.OK)
{
Content = new StringContent(some html goes here)
};
response.Content.Headers.ContentType = new MediaTypeHeaderValue("text/html");
return response;

Ответ от этого кода (200 OK):

{
    "version": {
        "major": 1,
        "minor": 1,
        "build": -1,
        "revision": -1,
        "majorRevision": -1,
        "minorRevision": -1
    },
    "content": {
        "headers": [
            {
                "key": "Content-Type",
                "value": [
                    "text/html"
                ]
            }
        ]
    },
    "statusCode": 200,
    "reasonPhrase": "OK",
    "headers": [],
    "requestMessage": null,
    "isSuccessStatusCode": true
}

Некоторые из настроек, которые могут иметь отношение:

config.Formatters.JsonFormatter.SerializerSettings.ContractResolver =new CamelCasePropertyNamesContractResolver();
config.Formatters.JsonFormatter.SerializerSettings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;
config.Formatters.JsonFormatter.SerializerSettings.PreserveReferencesHandling = PreserveReferencesHandling.None;
config.Formatters.JsonFormatter.UseDataContractJsonSerializer = false;
config.Formatters.Remove(config.Formatters.XmlFormatter);

Запрос настроен на прием стандартных типов контента.

Я читал кое-что о создании пользовательского форматера, но я думаю, что в этом нет необходимости, поскольку я могу нормально возвращать HTML в пустом проекте веб-API. Я думаю, что что-то с промежуточным программным обеспечением или что-то еще в конвейере перехватывает объект и сериализует.

  • .NET 4.6
  • Пакеты NuGet: для Microsoft.AspNet.WebApi. * Установлено значение 5.2.5.
  • Это проблема, с которой я сталкиваюсь в своем местном окружении.

Как всегда, любая помощь приветствуется. Спасибо!

...