Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

hardcore

[Duvida] Passar objecto para stored procedure

Mensagens Recomendadas

hardcore

Viva pessoal, tudo bem?

Tenho aqui uma dúvida... Eu tenho um stored procedure para fazer uma determinada tarefa na base de dados. Queria saber se é possivel executar um stored procedure através dos dados que estão num objecto.

Imaginem que eu estou a inserir um utilizador. Em vez de estar a fazer campo a campo:

conn.Open();
cmd = new SqlCommand("inserirUtilizador", conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@primeiroNome", SqlDbType.VarChar).Value = TextNome.Text();
cmd.Parameters.Add("@ultimoNome", SqlDbType.VarChar).Value = TextApelido.Text();
rdr = cmd.ExecuteReader();

Passar logo um objecto com os campos todos:

Funcoes.utlizador util = new utilizador(TextNome.Text(),TextApelido.Text())

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
bruno1234

Os parametros para a Stored Procedure têm que ser passados um a um.

Podes é arranjar convenções de modo a que possas fazer uma método que recebendo um array de parametros, os consiga mapear para a Stored Procedure.

Chamas os parametros: p1, p2, etc...

Ou ainda melhor, se usas Reflection para obter o nome da propriedade e crias os parametros da Stored Procedure com o mesmo nome que as propriedades em C#.


Matraquilhos para Android.

Gratuito na Play Store.

https://play.google.com/store/apps/details?id=pt.bca.matraquilhos

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
hardcore

Os parametros para a Stored Procedure têm que ser passados um a um.

Podes é arranjar convenções de modo a que possas fazer uma método que recebendo um array de parametros, os consiga mapear para a Stored Procedure.

Chamas os parametros: p1, p2, etc...

Ou ainda melhor, se usas Reflection para obter o nome da propriedade e crias os parametros da Stored Procedure com o mesmo nome que as propriedades em C#.

Pois... O que eu estou a fazer é usar o get do objecto e passar para o stored procedure, um a um... Isso não trás nenhuma vantagem até deve pesar mais (digo eu). Pensei é que houvesse um método como se faz nos vectores. Vectores.add(objecto);

Obrigadão pela ajuda =)

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.