Здравствуйте, как правильно спарсить json объект в класс.
Данные клиента:
{"contacts":[
{
"FirstName": "Vasya",
"SecondName": "Petrov",
"Phones": [ "79854571245"]
},
{
"FirstName": "Petya",
"Company": "SDD",
"Phones": ["79854571241","79854571246"]
}]
}
Принимаю запрос:
public ActionResult Update(List<Contact> contacts)
{
return Json(new { state = contacts });
}
Структура классов, в которую парсится запрос
public class Contact
{
public Contact()
{
var Phones = new List<Phone>();
}
public int id { get; set; }
public string FirstName { get; set; }
public string SecondName { get; set; }
public string Company { get; set; }
public string UserId { get; set; }
[ForeignKey("UserId")]
public virtual ApplicationUser User { get; set; }
public ICollection<Phone> Phones { get; set; }
public DateTime DateAdd { get; set; } = DateTime.Now;
}
}
Phone
public class Phone
{
public int id { get; set; }
public string Tel { get; set; }
public int ContactId { get; set; }
[ForeignKey("ContactId")]
public virtual Contact Contact { get; set; }
public DateTime DateAdd { get; set; } = DateTime.Now;
}
}
Естественно что структура запроса несовсем соответствует классам. Можно ли реализовать кастомный конструктор чтобы и заполнить соответствующие поля коллекции Phones