public RetornoBase <List <TAutor> > Realizar(ListaAutoresDisponiveis listaAutoresDisponiveis)
        {
            var retorno = new RetornoBase <List <TAutor> >();

            var aoListarAutoresDisponiveis = repLivro.ListarAutoresDisponiveis(listaAutoresDisponiveis.LivroId);

            if (aoListarAutoresDisponiveis.Problemas.Count > 0)
            {
                retorno.Mensagem = "Não foi possível listar os autores disponíveis.";
                retorno.Problemas.AddRange(aoListarAutoresDisponiveis.Problemas);
            }
            else
            {
                retorno.Valor = new List <TAutor>();
                foreach (var item in aoListarAutoresDisponiveis.Valor)
                {
                    retorno.Valor.Add(new TAutor
                    {
                        AutorId   = item.AutorId,
                        Nome      = item.Nome.Nome,
                        Sobrenome = item.Nome.Sobrenome
                    });
                }
            }

            return(retorno);
        }
        public RetornoBase <List <AutorDTO> > Realizar(Operacao.ListaAutoresDisponiveis listaAutoresDisponiveis)
        {
            var retorno = new RetornoBase <List <AutorDTO> >();

            var aoListarAutoresDisponiveis = repLivro.ListarAutoresDisponiveis(listaAutoresDisponiveis.LivroId);

            if (aoListarAutoresDisponiveis.Problemas.Count > 0)
            {
                retorno.Mensagem = "Não foi possível listar os autores disponíveis.";
                retorno.Problemas.AddRange(aoListarAutoresDisponiveis.Problemas);
            }
            else
            {
                retorno.Valor = new List <AutorDTO>();
                foreach (var autor in aoListarAutoresDisponiveis.Valor)
                {
                    retorno.Valor.Add(AutorDTO.Fabricar(autor));
                }
            }

            return(retorno);
        }