close

ADO.NET

Gå til navigation Gå til søg
Image
Denne teknologi er en del af .NET Framework 3.0 (har været en del af frameworket siden version 1.0).

ADO.NET er et sæt softwarekomponenter, der kan bruges af programmører til at få adgang til data og datatjenester. Det er en del af biblioteket af basisklasser, der er inkluderet i Microsoft .NET Framework. Det bruges almindeligvis af programmører til at få adgang til og ændre data, der er gemt i et relationelt databasestyringssystem , selvom det også kan bruges til at få adgang til data i ikke-relationelle kilder. ADO.NET betragtes nogle gange som en udvikling af ActiveX Data Objects (ADO) teknologi, men den er blevet ændret så omfattende, at den kan opfattes som et helt nyt produkt.

Arkitektur

ADO.NET består af to primære dele:

Dataudbyder

Disse klasser giver adgang til en datakilde, såsom Microsoft SQL Server og Oracle . Hver datakilde har sit eget sæt udbyderobjekter, men hver har et fælles sæt hjælpeklasser:

  • Forbindelse: Giver en forbindelse, der bruges til at kommunikere med datakilden. Det fungerer også som en abstrakt fabrik for kommandoobjekter.
  • Kommando: Bruges til at udføre en handling på datakilden, såsom læsning, opdatering eller sletning af relationelle data.
  • Parameter: Beskriver en enkelt parameter til en kommando . Et almindeligt eksempel er en parameter, der skal bruges i en lagret procedure .
  • DataAdapter: "Bridge" bruges til at overføre data mellem en datakilde og et DataSet-objekt (se nedenfor).
  • DataReader: Er en klasse, der bruges til effektivt at behandle en stor liste af resultater, én post ad gangen.

Datasæt

DataSets-objekter, en gruppe klasser, der beskriver en simpel relationel database i hukommelsen , var stjernen i showet i den første udgivelse (1.0) af Microsoft .NET Framework. Klasserne danner et indeslutningshierarki:

  • Et DataSet- objekt repræsenterer et skema (enten en hel database eller en delmængde af en). Det kan indeholde tabellerne og relationerne mellem disse tabeller.
    • Et DataTable- objekt repræsenterer en enkelt tabel i databasen. Den har et navn, rækker og kolonner.
      • Et DataView- objekt "sidder ovenpå" af en DataTable og bestiller dataene (som en SQL "order by"-klausul) og, hvis et filter er aktiveret, filtrerer posterne (som en SQL "where"-klausul). For at lette disse operationer bruges et hukommelsesindeks. Alle DataTables har et standardfilter, mens et hvilket som helst antal yderligere DataViews kan defineres, hvilket reducerer interaktion med den underliggende database og dermed forbedrer ydeevnen.
        • En DataColumn repræsenterer en tabelkolonne, inklusive dens navn og type.
        • Et DataRow- objekt repræsenterer en enkelt række i tabellen og gør det muligt at læse og opdatere værdierne i den pågældende række, samt genfinding af alle rækker, der er relateret til det gennem en primær nøgle - fremmednøgle relation.
        • En DataRowView repræsenterer en enkelt række af en DataView, forskellen mellem en DataRow og DataRowView er vigtig, når man interagerer med et resultatsæt.
    • En DataRelation er en relation mellem tabeller, såsom en primær nøgle - fremmed nøgle relation. Dette er nyttigt for at aktivere DataRows funktionalitet til at hente relaterede rækker.
    • En begrænsning beskriver en databaseegenskab, der skal være sand, såsom at værdierne i en primær nøglekolonne skal være unikke. Efterhånden som dataene ændres, vil enhver overtrædelse, der forekommer, forårsage undtagelser.

Et datasæt udfyldes fra en database af en dataadapter, hvis forbindelses- og kommandoegenskaber er blevet indstillet. Et datasæt kan dog gemme dets indhold til XML (valgfrit med et XSD-skema) eller udfylde sig selv fra XML, hvilket gør dette usædvanligt nyttigt til webtjenester, distribueret databehandling og lejlighedsvis tilsluttede/afbrudte applikationer.

ADO.NET og Visual Studio .NET

I Visual Studio .NET IDE er der funktionaliteten til at skabe specialiserede underklasser af DataSet-klasserne til et bestemt databaseskema, hvilket giver nem adgang til hvert felt gennem stærkt indtastede egenskaber. Dette hjælper med at fange flere programmeringsfejl på kompileringstidspunktet og gør IDE's Intellisense-funktion mere nyttig.

ADO.NET Entity Framework

ADO.NET Entity Framework er et sæt dataadgangs- API'er til Microsoft .NET Framework, der er målrettet mod den version af ADO.NET, der leveres med .NET Framework 3.5 . Den blev udgivet som en separat opdatering sammen med Service Pack 1 til .NET Framework efter udgivelsen af ​​både .NET Framework 3.5 og Visual Studio 2008. En ny version af Entity Framework (v 4.0) vil blive frigivet sammen med Visual Studio 2010. og .NET Framework 4.0.

En Entity Framework- entitet er et objekt, der har en nøgle, der repræsenterer den primære nøgle for en logisk datalagerentitet. En konceptuel enhedsdatamodel (Entity-Relationship model) er knyttet til en datalagerskemamodel. Ved at bruge enhedsdatamodellen tillader rammen data at blive behandlet som enheder uafhængigt af deres underliggende datalagerrepræsentationer.

Entity SQL er et SQL-lignende sprog til at forespørge på Entity Data Model (i stedet for det underliggende datalager). Tilsvarende giver Linq-udvidelserne, Linq-to-Entities, forespørgsler skrevet på Entity Data Model. Entity SQL- og Linq-to-Entities-forespørgsler konverteres internt til et kanonisk forespørgselstræ, som derefter konverteres til en forståelig forespørgsel til det underliggende datalager (f.eks. til SQL i tilfælde af en relationel database). Enheder kan bruge deres relationer og deres ændringer skubbet tilbage til datalageret.

ADO.NET Data Services

Også kendt som WCF Data Services, dets kodenavn er "Astoria".

Det er en platform for Microsoft at kalde datatjenester, det er en kombination af runtime og en webtjeneste, som tjenesterne eksponeres igennem. Derudover inkluderer det også Data Services Toolkit, der gør det muligt at oprette Astoria Data Services fra ASP.NET . Projektet blev annonceret på Astoria MIX 2007, og den første forhåndsvisning af udviklere blev gjort tilgængelig den 30. april 2007. CTP'en blev først gjort tilgængelig som en del af ASP.NET 3.5 Extensions Preview. Navneændringen fra ADO.NET Data Services til WCF Data Services blev annonceret i 2009.

Se også

Dataadgangsteknologier
  • MDAC (Microsoft Data Access Components)
  • OLE DB (Object Linking and Embedding for Databases)
  • ODBC (Open Database Connectivity)
  • ADO (ActiveX Data Objects) ( ADO vs. ADO.NET )
  • DAO (Data Access Objects)
  • RDS (Remote Data Services)
  • Microsoft Jet Database Engine
O/R kortlægning
Dataadgang og synkronisering

Eksterne links