none
Alterar usando linq e reflection RRS feed

  • Pergunta


  • Tenho o seguinte método que usa linq para alterar uma tabela da seguinte forma:

            public bool alteraPerfil(tb_perfis itemPerfil)
            {
                try
                {
                    using (GestaoEntities db = new GestaoEntities())
                    {
                        var perfil = db.tb_perfis.Where(v => v.int_id_perfil.Equals(itemPerfil.int_id_perfil)).FirstOrDefault();
    
                        perfil.int_id_perfil = itemPerfil.int_id_perfil;
                        perfil.txt_perfil = itemPerfil.txt_perfil;
                        perfil.txt_descricao = itemPerfil.txt_descricao;
                        perfil.bit_ativo = itemPerfil.bit_ativo;
    
                        db.SaveChanges();
    
                        return true;
                    }
                }
                catch (Exception)
                {
                    return false;
                }
            }

    Teria como fazer esta parte do método:

                        perfil.int_id_perfil = itemPerfil.int_id_perfil;
                        perfil.txt_perfil = itemPerfil.txt_perfil;
                        perfil.txt_descricao = itemPerfil.txt_descricao;
                        perfil.bit_ativo = itemPerfil.bit_ativo;

    Se feita de forma mais deinâmica.

    Tipo refletir os atributos de itemPerfil em perfil?



    Ninguém falou que seria fácil!


    • Editado jothaz quinta-feira, 20 de setembro de 2012 19:12
    quinta-feira, 20 de setembro de 2012 19:07

Respostas

  • se o objeto passado por parametro for do mesmo tipo do que você vai salvar no banco

    dá para fazer sim , se forem de tipos diferentes você vai ter que fazer exatamente oq vc fez...


    Se for útil marcar como resposta Para que outros Aproveitem

    • Sugerido como Resposta Jones Roberto domingo, 23 de setembro de 2012 16:09
    • Marcado como Resposta Harley Araujo segunda-feira, 24 de setembro de 2012 11:31
    sábado, 22 de setembro de 2012 19:45

Todas as Respostas

  • se o objeto passado por parametro for do mesmo tipo do que você vai salvar no banco

    dá para fazer sim , se forem de tipos diferentes você vai ter que fazer exatamente oq vc fez...


    Se for útil marcar como resposta Para que outros Aproveitem

    • Sugerido como Resposta Jones Roberto domingo, 23 de setembro de 2012 16:09
    • Marcado como Resposta Harley Araujo segunda-feira, 24 de setembro de 2012 11:31
    sábado, 22 de setembro de 2012 19:45
  • Desculpe a demora em responder, estou andando ocupado.

    Os objetos são do mesmo tipo.

    Teria como me enviar um exemplo de como posso fazer isto com reflection?


    Ninguém falou que seria fácil!

    sexta-feira, 28 de setembro de 2012 00:58