Meget af Microsofts datateknologi, ADO.NET, leveres af DataSet-objektet. Dette objekt læser databasen og opretter en kopi i hukommelsen af den del af databasen, som din program har brug for. Et DataSet-objekt svarer normalt til en reel databasetabel eller -visning, men DataSet er en frakoblet visning af databasen. Når ADO.NET har oprettet et datasæt, er der ikke behov for en aktiv forbindelse til databasen, som hjælper med skalerbarhed, fordi programmet kun skal oprette forbindelse til en databaseserver i mikrosekunder ved læsning eller skrivning. Ud over at være pålidelig og let at bruge understøtter DataSet både en hierarkisk visning af dataene som XML og en relationel visning, som du kan administrere, efter at dit program er afbrudt.
Du kan oprette dine egne unikke visninger af en database ved hjælp af DataSet. Forhold DataTable-objekter til hinanden med DataRelation-objekter. Du kan endda håndhæve dataintegritet ved hjælp af UniqueConstraint- og ForeignKeyConstraint-objekterne. Det enkle eksempel nedenfor bruger kun en tabel, men du kan bruge flere tabeller fra forskellige kilder, hvis du har brug for dem.
Kodning af et VB.NET-datasæt
Denne kode opretter et datasæt med en tabel, en kolonne og to rækker:
Den mest almindelige måde at oprette et DataSet på er at bruge udfyldningsmetoden til DataAdapter-objektet. Her er et testet programeksempel:
Datasættet kan derefter behandles som en database i din programkode. Syntaxen kræver det ikke, men du giver normalt navnet på Datatabellen for at indlæse dataene i. Her er et eksempel, der viser, hvordan man viser et felt.
Selvom DataSet er let at bruge, hvis rå ydeevne er målet, kan du have det bedre med at skrive mere kode og i stedet bruge DataReader.
Hvis du skal opdatere databasen efter at have ændret DataSet, kan du bruge opdateringsmetoden til DataAdapter-objekt, men du skal sikre dig, at DataAdapter-egenskaberne er indstillet korrekt med SqlCommand-objekter. SqlCommandBuilder bruges normalt til at gøre dette.
DataAdapter finder ud af, hvad der har ændret sig, og udfører derefter en INSERT, UPDATE eller DELETE-kommando, men som med alle databasefunktioner kan opdateringer til databasen løber ind i problemer, når databasen opdateres af andre brugere, så du har ofte brug for at medtage kode for at foregribe og løse problemer, når du ændrer databasen.
Nogle gange er det kun et DataSet, der gør det, du har brug for. Hvis du har brug for en samling, og du serialiserer dataene, er et DataSet det værktøj, du skal bruge. Du kan hurtigt serialisere et DataSet til XML ved at kalde WriteXML-metoden.
DataSet er det mest sandsynlige objekt du vil bruge til programmer, der refererer til en database. Det er det centrale objekt, der bruges af ADO.NET, og det er designet til at blive brugt i en frakoblet tilstand.