Как исправить вывод JSON для потребления JQuery Ajax - PullRequest
0 голосов
/ 15 февраля 2019

Я пытаюсь получить JSON со страницы webforms.cs на страницу .aspx.Это относительно легко сделать с JSONResult в MVC, но, похоже, это проблема с веб-формами.

Так что у меня есть функция [WebMethod] в моем файле cs, как показано ниже.

Этот метод действительно возвращаетстранный json.

Необработанный результат Fiddler выглядит следующим образом.

{"d": "[[{\ \ name \": \ "Label1 \", \ "y \": 28....

Есть ли что-то вроде JsonResult для веб-форм? Я полагаю, поскольку метод return имеет тип string, он портит результат, и я не знаю, почему он появляется как массив внутри массива и с именем d.

Мне нужно это в формате [{name: "Label1", "y": 28}, {...].

Как мне получить его в этом формате?

[WebMethod]
    public static string GetData()
    {

        JavaScriptSerializer json = new JavaScriptSerializer();


        var myTable= DataTable.AsEnumerable().Where(x => x.Field<int>(1) == 2018)
        .Select(x => new[]
        {
            new { name = "LABEl 1", y = x[2] },
            new { name = "Label 2", y = x[3] },




        });



        String export= json.Serialize(myTable);
        return export;


    }

1 Ответ

0 голосов
/ 15 февраля 2019

Вы можете легко преобразовать его обратно в json внутри метода success вашего Ajax-вызова, используя

var obj = JSON.parse(response.d);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...