Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

tableadapters i konekcije

[es] :: .NET :: tableadapters i konekcije

[ Pregleda: 1773 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Smireni Magnet
softver inzenjer

Član broj: 9520
Poruke: 81
*.proxy.cg.yu.



Profil

icon tableadapters i konekcije21.08.2006. u 13:13 - pre 214 meseci
Koristim Visual Studio 2005 i radim na jednoj Windows aplikaciji koja komunicira sa Access bazom, kao i na jednom web servisu koji takodje komunicira sa istom bazom. Ne bih sada da objasnjavam zasto i kako, ali to je zahtev.

Elem, imam pitanje na koje ni posle guglanja nisam nasao odgovor, a vezuje se za tableadaptere i bitno mi je za performanse obe aplikacije.

Naime, tabeladapteri su jedan veoma elegantan nacin komunikacije sa bazom, ali me zanima da li se pri svakom pozivanju metode tableadaptera za rad sa bazom (Fill, GetData, Insert, Update, Delete) otvara nova konekcija, koja se na kraju izvrsavanja te metode gasi, ili se pri inicijalizaciji samog tableadaptera otvara jedna konekcija, koja se gasi kada se radi dispose od tableadaptera?
Ako je odgovor na ovo pitanje prva varijanta, tj da se pri svakom pozivu otvara i zatvara konekcija da li moze nekako da se podesi da mi se konekcija otvori na pocetku a zatvori na kraju koriscenja programa?

Da li je ovo isto moguce sa web servisom?

Web servis i aplikacija u isto vreme manipulisu sa bazom, tacnije sa jednom tabelom, pa me zanima da li moze biti narusena konzistentost podataka? Da pojasnim, ona gorepomenuta tabela je ocigledno zamisljena kao FIFO bafer ,tako da web service radi insert, a win aplikacija cita podatke i brise.

Pozdrav,
SM
To me boxing is like a ballet, except
there is no choreography, no dancing and the dancers hit each other...
 
Odgovor na temu

prog
Bihac

Član broj: 106882
Poruke: 77
80.65.91.*



Profil

icon Re: tableadapters i konekcije22.08.2006. u 06:38 - pre 214 meseci
Tacna je tvrdnja ova prva. Kod svakog pozivanja metoda fill, update, insert itd,nova konekcija se uspostavlja, te se zatvara kada se izvrsi ista.
Kad se koristi ADO.NET vazi deviza: Sto kasnije otvoriti konekciju te je sto ranije zatvoriti.

Ne preporucuje se drzanje otvorene konekcije tokom cijelog zivotnog ciklusa aplikacije.

Ali ako bas hoces da drzis konekciju otvorenu onda moras izmjeniti klasu Adaptera tabele, i metode oko uspostavljanja konekcije, te kad klasa adaptera tabele trazi konekciju (preko metode InitConnection) treba da mu pridruzis svoju koju si kreirao na pocetku programa. Za web servise mislim da je nemoguće drzati konekciju otvorenu jer bi ti to srusilo server ili bi ga znatno opteretilo.

 
Odgovor na temu

negyxo
Aleksandar Perkuchin

Član broj: 29751
Poruke: 898
*.sksyu.net.



+171 Profil

icon Re: tableadapters i konekcije22.08.2006. u 11:55 - pre 214 meseci
Citat:
prog: Tacna je tvrdnja ova prva. Kod svakog pozivanja metoda fill, update, insert itd,nova konekcija se uspostavlja, te se zatvara kada se izvrsi ista.


Pa nije bas tako. Konekcija se otvara u slucaju da nije bila otvorena pa se onda zatvori a u slucaju da je bila otvorena ostaje otvorena.
MSDN za fill:
Citat:

The Fill method retrieves the data from the data source using a SELECT statement. The IDbConnection object associated with the select command must be valid, but it does not need to be open. If the IDbConnection is closed before Fill is called, it is opened to retrieve data and then closed. If the connection is open before Fill is called, it remains open.

Mada isto vazi i za update.
Sto znaci... da ako hoces da drzis konekciju otvorenu onda dodeli Connection property-u neku tvoju konekciju koja ce biti otvorena i to je to. Samo nemoj posle da zaboravis da je zatvoris.



 
Odgovor na temu

[es] :: .NET :: tableadapters i konekcije

[ Pregleda: 1773 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.