ASP.NET MVC WebAPI Возвращаемый поток JsonContent, а не JSON, как и ожидалось на WebServer - PullRequest
0 голосов
/ 23 февраля 2019

Я пытаюсь получить данные из WebAPI следующим образом:

http://*****/Api/Customers/GetAll

С кодом ниже:

public HttpResponseMessage GetAll()
    {

        var response = new HttpResponseMessage();

        var sites = db.Site;

        if (sites == null || sites.Count() == 0)
        {
            response = new HttpResponseMessage(HttpStatusCode.NoContent)
            {
                Content = new StringContent("Could not find any site")
            };
            return response;

        }
        response = new HttpResponseMessage(HttpStatusCode.OK)
        {
            Content = new JsonContent(sites)
        };

        return response;
    }

и класс JsonContent для преобразования объекта в JSON, как определено:

 public JsonContent(object value)
    {
        Headers.ContentType = new MediaTypeHeaderValue("application/json");
        var JsonTextWriter = new JsonTextWriter(new StreamWriter(_Stream));
        JsonTextWriter.Formatting = Formatting.Indented;
        var Serializer = new JsonSerializer();
        Serializer.Serialize(JsonTextWriter, value);
        JsonTextWriter.Flush();
        _Stream.Position = 0;

    }

Он отлично работает на локальном хосте, но когда я выполняю его на сервере и вызываю api, он возвращает (содержимое ответа):

{"Version":{"_Major":1,"_Minor":1,"_Build":-1,"_Revision":-1},"Content":{"Headers":[{"Key":"Content-Type","Value"application/json"]}]},"StatusCode":200,"ReasonPhrase":"OK","Headers":[],"RequestMessage":null,"IsSuccessStatusCode":true}

Что не так, я надеюсь, что помощь,спасибо всем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...