Article View: pl.comp.objects
Article #14794obiekty DAL i connection string
From: Grzegorz Danowski
Date: Sun, 18 Jun 2006 18:10
Date: Sun, 18 Jun 2006 18:10
32 lines
2543 bytes
2543 bytes
Witam! Mam komponent zawierające proste klasy z metodami pobierającymi dane z bazy, czyli coś w rodzaju DAL. Gdzie powinienem trzymać connection string? Pierwotnie w tymże komponencie utworzyłem singleton, który zawierał dane konfiguracyjne, nazwę użytkownika, hasło i pozostałe elementy ciągu połączenia do bazy. A wyższa warstwa aplikacji (powiedzmy biznesowa) pobierała od użytkownika login i hasło, a następnie inicjowała singleton konfiguracyjny. To spełniało swoje przeznaczenie, aż do czasu, gdy tenże komponent DAL zechciałem wykorzystać w innej aplikacji, odwołującej się do innej bazy (za każdym razem nowo tworzonej o innej ścieżce). Wielokrotne inicjowanie singletona konfiguracyjnego wydało mi się kiepskim pomysłem, więc przerobiłem swoje klasy DAL tak by w konstruktorze przyjmowały connection string. W tej chwili ciąg połączenia jest przechowywany w warstwie biznesowej i każdorazowo przy tworzeniu nowego obiektu DAL jest do niego przekazywany. Czy to jest dobry pomysł, czy jest lepsze rozwiązanie? Musi być lepsze, bo jak sobię wyobraże wykorzystanie innego komponentu DAL, to przekazywanie do niego tego samego ciągu połączenia napewno zakończy się błędem. A więc może z warstwy biznesowej przekazywać tylko nazwę użytkownika i hasło, a pozostałe elementy niech DAL pobiera z pliku koniguracyjnego? Ale co z sytuacją, gdy z poziomu aplikacji chcemy odwołać się do innej bazy (nowo utworzonej)? Przyznam, że już mam mętlik w głowie :-). Pozdrawiam Grzegorz Ps. piszę w c#
Technical Details
Message-ID:
<e744uq$a2u$1@inews.gazeta.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mailShow Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail From: "Grzegorz Danowski" <gdn__na@serwerze__poczta.onet.pl> Newsgroups: pl.comp.objects Subject: obiekty DAL i connection string Date: Sun, 18 Jun 2006 20:10:30 +0200 Organization: "Portal Gazeta.pl -> http://www.gazeta.pl" Lines: 33 Message-ID: <e744uq$a2u$1@inews.gazeta.pl> Reply-To: "Grzegorz Danowski" <gdn__na@serwerze__poczta.onet.pl> NNTP-Posting-Host: ntwklan-62-233-197-214.devs.futuro.pl Mime-Version: 1.0 X-Trace: inews.gazeta.pl 1150654234 10334 62.233.197.214 (18 Jun 2006 18:10:34 GMT) X-Complaints-To: usenet@agora.pl NNTP-Posting-Date: Sun, 18 Jun 2006 18:10:34 +0000 (UTC) X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2869 X-Priority: 3 X-User: grzegorz_danowski X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.2869 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit