Как отформатировать объект С# для отображения категории и подкатегории в теле json?

Я звоню restfulURL с помощью веб-клиента. Мне нужно отправить тело json, как показано в примере ниже. Может ли кто-нибудь помочь мне с отправкой категории и подкатегории в моем теле json.

Какой объект (например, List или IEnumerable) я должен использовать, чтобы jsonSerializer преобразовал его в следующий формат.

{
"Адрес":{
"Почтовый индекс": "123",
"Город": "LA",
"Штат": "CA",
},
"Категория":{
"ID":1,
"Имя":"",
"Подкатегория":[{
"Флаг": false,
"ID":123,
"Name":"name"
}]
},
"Email":"[email protected]" ,
"Имя":"первый",
"Фамилия":"последний",
}


person seUser    schedule 07.03.2012    source источник


Ответы (1)


public class Widget{
    public string Address{get; set;}
    public string City{get; set;}
    //other properties
    public Category Category {get; set;}
}

public class Subcategory{
   public int Id{get; set;}
   public string Name {get; set;}
}
public class Category{
    public int Id{get; set;}
    public string Name {get; set;}
    public List<Subcategory> Subcategory {get; set;}
}

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

person ek_ny    schedule 07.03.2012
comment
Спасибо. Будет ли иметь значение, если я использую IEnumerable вместо List? - person seUser; 08.03.2012
comment
Я так не думаю - я знаю, что пуристы любят использовать Enumerable, и внутри они могут иметь любую коллекцию. Честно говоря, я обычно просто использую список - спасибо, что пометили как правильный! - person ek_ny; 08.03.2012