Como desserealizar um objeto em mvc enviado por Json ?
Boa noite!,
Estou fazendo uma tela de cadastro em MVC 5, quando o usuário clicar no botão Salvar o sistema vai enviar os dados via Json através da seguinte string serealizada:
O problema é que eu tenho que desserealizar e popular os dados nas duas models abaixo:
Model TBFuncionario:
Model TBEndereco:
Obrigado!
Estou fazendo uma tela de cadastro em MVC 5, quando o usuário clicar no botão Salvar o sistema vai enviar os dados via Json através da seguinte string serealizada:
[[{"TBFUNCIONARIOID":0,"NMFUNCIONARIO":"JOÃO","MATRICULA":"12312","DTADMISSAO":"01/01/2015","STATUS":false,"CPF":"13500305890" ,"TBEndereco":[ {"TBENDERECOID":0,"TBFUNCIONARIOID":0,"LOGRADOURO":"Rua João da Silva ","NUMLOGRADOURO":"" ,"COMPLEMENTO":"" ,"BAIRRO":"Vila ABC" ,"CEP":"08460348"} ,{"TBENDERECOID":0,"TBFUNCIONARIOID":0,"LOGRADOURO":"Rua André Higino ","NUMLOGRADOURO":"32","COMPLEMENTO":"apt 78","BAIRRO":"Jardim São Paulo","CEP":"08460"} ,{"TBENDERECOID":0,"TBFUNCIONARIOID":0,"LOGRADOURO":"Rua Carlos de Siqueira","NUMLOGRADOURO":"70","COMPLEMENTO":"casa 3","BAIRRO":"Jardim Triana" ,"CEP":"03554000"} ] }]]
O problema é que eu tenho que desserealizar e popular os dados nas duas models abaixo:
Model TBFuncionario:
public class TBFuncionario { public int TBFUNCIONARIOID { get; set; } public string MATRICULA { get; set; } [DisplayFormat(ApplyFormatInEditMode=true, DataFormatString="{0:dd/MM/yyyy}")] public DateTime? DTADMISSAO { get; set; } public string NMFUNCIONARIO { get; set; } public bool STATUS { get; set; } public string CPF { get; set; } public virtual ICollection<TBEndereco> TBEndereco { get; set; } }
Model TBEndereco:
public class TBEndereco { [Key] public int TBENDERECOID { get; set; } public int TBFUNCIONARIOID { get; set; } public string LOGRADOURO { get; set; } public string NUMLOGRADOURO { get; set; } public string COMPLEMENTO { get; set; } public string BAIRRO { get; set; } public string CEP { get; set; } [ForeignKey("TBFUNCIONARIOID")] public virtual TBFuncionario TBFuncionario { get; set; } }
Obrigado!
Adriano Cordeiro
Curtidas 0
Melhor post
Hector Figueroa
19/08/2015
Fala Adriano, eu uso no meu projeto que não e mvc, coloquei a referencia "Newtonsoft" no projeto e uso:
using Newtonsoft.Json;
e uso o JsonConvert.DeserializeObject(SeuObjeto) para deserializar;
using Newtonsoft.Json;
e uso o JsonConvert.DeserializeObject(SeuObjeto) para deserializar;
GOSTEI 1
Mais Respostas
Randrade
18/08/2015
Como você irá enviar esses dados?
Através de forms, ajax, arquivo?
Através de forms, ajax, arquivo?
GOSTEI 0
Adriano Cordeiro
18/08/2015
Bom dia!
Hector essa biblioteca funcionou ! eu só tive que fazer um ajuste:
Fazer um replace pra tirar os colchetes:
Obrigado!
Hector essa biblioteca funcionou ! eu só tive que fazer um ajuste:
Fazer um replace pra tirar os colchetes:
TBFuncionario model = JsonConvert.DeserializeObject<TBFuncionario>(pTBFuncionario.Replace("[[","").Replace("]]",""));
Obrigado!
GOSTEI 0
Adriano Cordeiro
18/08/2015
Obrigado Randrade a solução indicado pelo Hector funcionou, ah! eu estou enviando via Ajax para uma View mvc 5.
Obrigado!
Obrigado!
GOSTEI 0
Hector Figueroa
18/08/2015
Blza! que bom! \o/
GOSTEI 0