Skip Navigation Links
Novas Tecnologias
Ferramentas Adicionais
Ferramentas Adicionais


Dica No :
612
Assunto : ADO.NET
Titulo: DataBinding e trabalho em camadas

Gostou do texto ? Vote e dê sua opinião! Pontuação atual :

Translate this page now :






Adicione aos Favoritos!
BlogBlogs Rec6 Linkk Ueba Technorati Delicious DiggIt! StumbleUpon



O recurso de vincular os objetos do formulário a uma origem de dados, tal como um dataset, é um poderoso recurso de RAD (desenvolvimento rápido de aplicações)

Quando estamos desenvolvendo em camadas, porém, temos um pequeno problemas. As instruções que realizam o dataBinding são inseridas no InitializeComponent do form, enquanto que a chamada do componente que irá trazer os dados fica normalmente no load.

A chamada do componente tipicamente seria algo como :

ds1=obj.lerdados()

O problema é que no momento em que fazemos isso estamos destruindo a instância do dataset existente na variável ds1 e inserindo nesta variável um novo dataset, vindo do componente.

O problema disso é que os databindings neste momento já haviam sido realizados com um ponteiro apontando para o dataset anterior. Ao recebermos o novo, todos os databindings se perdem.

Para contornar este problema podemos fazer o seguinte :

dim dstmp as dataset

dstmp=obj.lerdados
ds1.merge(dstmp)

Com esse código utilizamos uma variável temporária para receber o dataset do componente e depois realizamos um merge. Desta forma o ponteiro de objeto original não é destruido, apenas importa os dados do dataset vindo do componente.


Nome :
E-mail:
Comentarios :
 
 
Os Últimos Comentários
data: 6/21/2006 4:23:00 PM
nome: edison
email: edisonjunior@yahoo.com.br
comentário:
Obrigado...

 1  
Dicas
Dica do Dia
Receba Dicas Por Email
E-mail :  
 


 (help)
Aceito receber informativos do devASPNet, informações de eventos e treinamentos

Veja Quais Informativos Você Receberá

Pesquisar Dicas
Pesquisar Artigos, Dicas e Noticias

Banco de Dados
Algumas Entrevistas
Links Importantes

Búfalo Informática, Treinamento e Consultoria
R. Alvaro Alvim, 37/920 Centro - Cinelândia - Rio de Janeiro Cep: 20031-010
Tel : (21) 2262-1368 (21) 9240-5134 E-mail : Contato@bufaloinfo.com.br