示例#1
0
        public static Chamado ParaEntidade(this DadosDoChamado dados)
        {
            if (dados == null)
            {
                return(null);
            }

            var tipoDoDestino = typeof(Chamado);
            var destino       = (Chamado)Activator.CreateInstance(tipoDoDestino, true);

            tipoDoDestino.GetProperty("Id").SetValue(destino, dados.Id);
            tipoDoDestino.GetProperty("Protocolo").SetValue(destino, new Protocolo(dados.Protocolo));
            tipoDoDestino.GetProperty("Descricao").SetValue(destino, dados.Descricao);
            tipoDoDestino.GetProperty("DataDaAbertura").SetValue(destino, dados.DataDaAbertura);

            if (dados.Respostas != null)
            {
                tipoDoDestino.GetProperty("Respostas").SetValue(destino, dados.Respostas.Select(r => r.ParaEntidade()));
            }

            return(destino);
        }
示例#2
0
 public Chamado AdaptarChamadoParaEntidade(DadosDoChamado chamado) => chamado.ParaEntidade();