Как преобразовать объект JSON в объект Custom C #? - PullRequest
212 голосов
/ 11 февраля 2010

Есть ли простой способ заполнить мой объект C # объектом JSON, переданным через AJAX?

Это JSON-объект, переданный в C # WEBMETHOD со страницы с использованием JSON.stringify

{
    "user": {
        "name": "asdf",
        "teamname": "b",
        "email": "c",
        "players": ["1", "2"]
    }
}

C # WebMetod, который получает объект JSON

[WebMethod]
public static void SaveTeam(Object user)
{

}

C # Класс, представляющий структуру объекта JSON Object, переданного в WebMethod

public class User
{
    public string name { get; set; }
    public string teamname { get; set; }
    public string email { get; set; }
    public Array players { get; set; }
}

Ответы [ 13 ]

1 голос
/ 25 апреля 2013

Генератор классов JSON C # в codeplex генерирует классы, которые хорошо работают с NewtonSoftJS.

1 голос
/ 11 февраля 2010

JSON.Net - ваш лучший выбор, но в зависимости от формы объектов и наличия круговых зависимостей вы можете использовать JavaScriptSerializer или DataContractSerializer.

0 голосов
/ 20 октября 2017

Вместо того, чтобы отправлять как просто объект.

Создайте общедоступный класс доступных свойств и отправьте данные в Webmethod.

[WebMethod]
public static void SaveTeam(useSomeClassHere user)
{
}

использовать те же имена параметров в вызове ajax для отправки данных.

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