És offline adatokat
Eddig az összes példa szoktuk ADO.NET eszközök alapján a vegyületek. Ha ezt a megközelítést, az adatok kizárólag az olyan tranzakciók velük az adattárban idején kitermelés. A kód teljesen követi az összes felhasználói aktivitás, információk tárolására és annak meghatározása, amikor egy új parancsot generál, és kivégezték.
Természetesen ez a megoldás hátrányai, például a hatását a párhuzamosság. Attól függően, hogy az alkalmazás célja, a teljes csomag változások lehet szállítani azonnal. De az egyetlen hiba (mint próbál rekordot frissíteni, hogy egy másik felhasználó egyszerre frissíti) képes elpusztítani az egész frissítési folyamat. Egy jól átgondolt kódolás, akkor tudja megvédeni az alkalmazást ezeket a problémákat, de további erőfeszítésekre lesz szükség.
Másrészt, néha szükség lehet használni autonóm (le) és a modell elérhető ADO.NET DataSet. Az alábbiakban forgatókönyv, amelyben használja a DataSet könnyebb, mint DataReader:
Ha szüksége van egy kényelmes csomagban küldeni az adatokat egy másik alkatrész (például, ha megosztja az információkat más alkatrészek vagy átadja azokat az ügyfelek egy webes szolgáltatás).
Mikor van szüksége egy fájlformátumba sorosításához az adatokat a lemezre (DataSet objektumot tartalmaz egy beépített funkció, amely lehetővé teszi, hogy mentse el az XML fájl).
Amikor szükség van szervezni navigációs mindkét irányban a nagy mennyiségű adat. Például használhatja a DataSet kezelésének támogatására a listát lapszámozás elem, amely információkat jelenít részein. Ezzel szemben a DataReader biztosít mozgó csak egy irányban - előre.
Mikor kell navigálni számos különböző táblázatokat. A DataSet menthetők mindezen menetrendek és információk a köztük lévő kapcsolatot, amely lehetővé teszi, hogy hozzon létre oldalakat „házi részletes” anélkül, hogy a lekérdezés az adatbázis többször.
Ha a használni kívánt adatkötéseket UI ellenőrzéseket. Az adatok kötelező alkalmazni lehet DataReader, hanem azért, mert a DataReader használ csak előre kurzort, akkor nem köti az adatokat a különböző ellenőrzéseket. Továbbá, ellentétben a DataSet, hogy nem tudja alkalmazni az egyéni szűrési és rendezési szempontok.
Amikor az adatok manipulálása XML-jelölést.
Ha azt szeretné, hogy biztosítsák a kötegelt frissítéseket. Például létrehozhat egy webes szolgáltatás, amely lehetővé teszi az ügyfél betölteni egy DataTable, tele húrok, végre több változásokat, és később küldje el az adatforrás. Ezen a ponton, az internetes szolgáltatás képes minden változás egy műveletben (feltételezve, hogy nincs konfliktus észlelése).
Web alkalmazások és DataSet
Általános tévhit, hogy a DataSet objektum van szükség annak biztosítására skálázhatóság webes alkalmazások. Most, hogy megértsék a feldolgozási architektúra ASP.NET kéréseket, és azt látja, hogy ez nem így van. Webes alkalmazások futnak néhány másodperc, ami azt jelenti, hogy még ha a webes alkalmazás közvetlen hozzáférést alapján a kurzor, az élettartama a kapcsolat annyira rövid, hogy nem nagyban befolyásolja a skálázhatóságot, kivéve a nagyon terhelt Web alkalmazásokat.
Tény, hogy a használata DataSet sokkal inkább indokolt, elosztott alkalmazások egy multi-funkciós Windows kliensek. Ebben az esetben a kliens hívhat le a DataSet a szerver (talán egy webes szolgáltatás) dolgozni ezeket a tárgyakat DataSet sokáig, és újra csatlakozik a rendszer csak abban az esetben, hogy kell frissíteni az adatforrás a változásokról. Ez lehetővé teszi a rendszer szolgálja több felhasználó egyidejű mint abban az esetben, ha minden ügyfél támogatja a közvetlen, hosszú meglévő kapcsolatot. Azt is lehetővé teszi, hogy hatékonyan források megosztása a gyorsítótár adatokat a szerveren és használata medencék közötti kapcsolatok ügyfél kéri.
A DataSet objektum is működik, mint egy tiszta információs csomag a gazdag kliens alkalmazások, amelyek csak alkalmilag csatlakoznak a rendszerhez.
Vegyük például egy utazási iroda, amely meg kell adnia annak érdekében információkat, illetve információk megtekintéséhez eladásra halad a laptop. A DataSet, hordozható számítógép felhasználó önálló alkalmazás helyben adatokat tárolhat szerializálod őket XML-fájlt. Ez lehetővé teszi, hogy a kereskedő, hogy dolgozzon az új megrendelések helyileg tárolt adatokat használják, még akkor is, ha az Internet kapcsolat nem áll rendelkezésre. Új adatokat lehet küldeni később, amikor egy felhasználó csatlakozhat a rendszerhez.
Szóval, mi az ASP.NET webalkalmazás? Sőt, két lehetősége van. Használhatja a DataSet vagy használja a közvetlen parancsokat, így nincs szükség a DataSet. Általánosságban elmondható, hogy ha a felvenni kívánt, insert, vagy frissítés bejegyzések, meg tudod csinálni anélkül, hogy a DataSet. Ahhoz azonban, hogy teljesen elkerülni a használatát DataSet nem.
Ha kiveszi a feljegyzések valószínűleg szeretné használni a DataSet, mint támogatja egy sor teljesen szükséges forrásokat. Különösen a DataSet megkönnyíti át a blokk adatokat az adatbázisból alkatrész egy weblap. DataSet objektum is támogatja kötelező adatokat, amely lehetővé teszi az információ megjelenítését az adatkezelési többfunkciós elemeket, mint GridView. Emiatt a legtöbb webes alkalmazások letölteni az adatokat a DataSet, és a frissítések keresztül végzett közvetlen parancsokat.
Web szolgáltatások jelentik az egyetlen valódi forgatókönyv alkalmazása a webes alkalmazások, ahol el lehet határozni, hogy egy batch frissítés a DataSet. Ebben az esetben a gazdag kliens alkalmazás betölti az adatokat a DataSet, szerkeszteni őket, és később küldi a DataSet végezze el a változtatásokat.
Integráció az XML
A DataSet objektum is beépített sorosítást XML. Nem is kell tudni, hogy kihasználják annak előnyeit, mint például a lehetőségét, hogy egy egyszerű serilizatsii DataSet egy fájlba vagy átadása DataSet másik alkalmazás segítségével egy webes szolgáltatás. És a legjobb az egészben, hogy ez az eszköz lehetővé teszi az adatok megosztását az ügyfelekkel írt különböző programozási nyelvek és más operációs rendszerekre. Ugyanakkor, a végrehajtás egy ilyen megoldás nem egyszerű (és gyakran DataSet - nem a legjobb megoldás), mivel csak minimális képesség, hogy testre XML-struktúrája van, hogy létrehoz egy DataSet.
Object DataSet - alapon elérhető adatokhoz való hozzáférés. DataSet két lényeges összetevőt: a gyűjtemény nulla vagy több táblából (elérhető a tulajdon táblázatok), valamint a gyűjtemény nulla vagy több kapcsolatot, amely felhasználható a táblák összekötéséhez egymáshoz (képviselők kapcsolatok tulajdonság).
Az alábbi ábra az alapvető szerkezete DataSet:
Néha kezdő fejlesztők ADO.NET azt a hibát, feltételezve, hogy a DataSet tartalmaznia minden olyan információt adatforrás táblázatban. Ez nem így van. A teljesítmény növelésének érdekében DataSet általában használt kis részét a teljes információ adatforrást. Ezen túlmenően, az asztalra a DataSet nem kell megjelenni közvetlenül az adatforrás asztalra. Egy tábla tartalmazhat lekérdezés eredménye egy táblázatban, vagy az eredményeket a csatlakozási kérelem, amely egyesíti az adatokat több kapcsolódó táblát.
Amint az ábrán látható, minden egyes bejegyzés DataSet.Tables gyűjtemény - a DataTable. DataTable objektum tartalmazza a saját gyűjtemény - tárgyak gyűjteménye oszlopok DataColumn (amely leírja a nevét és típusát az egyes adatmezőket), és a gyűjtemény Sorok tárgyak DataRow (tényleges adatokat tartalmazó egyes bejegyzést).
Minden rekord a DataTable objektum képviseli DataRow. Minden objektum jelentése egyszeres DataRow táblázat bejegyzés, amely letöltöttük az adatforrás. DataRow egy tartályba érvényes mező értékeket. Az azokhoz való hozzáférés lehet a mező nevét, mint abban az esetben myRow [ „FieldName”]. Mindig emlékezni, hogy az adatforrás semmilyen módon nem érinti, ha a munka a tárgyak DataSet. Ehelyett az összes változtatást hajtanak végre helyi szinten az objektum DataSet található a memóriában. DataSet soha hivatkozhat semmilyen adatforrás kapcsolatot.
Néhány módszer a DataSet