Deze week weer IT Training bij Twice, in Eindhoven Op de foto zie je het whiteboard waarop door Jeroen Hartsuiker, Microsoft trainer bij Twice, de architectuur van Microsoft ADO.NET (ActiveX Data Objects for .NET) is getekend.
ADO.NET is bedoeld om een standaard interface voor data access te definieren. De ADO.NET namespace System.Data binnen het .NET-raamwerk bevat o.a. interfaces als Connection en Command. Iedere technologie (SQL Server, Oracle, XML) kan zijn eigen implementatie geven aan deze interfaces. Met de komst van ADO.NET kan de keuze voor een data access technologie configureerbaar gemaakt worden.
ADO.Net staat bekend om het werken zonder actieve connectie naar een database, in het Engels "connectionless". Het voordeel hiervan is dat de database geen actieve connecties heeft die blijven openstaan. Deze actieve connecties zorgen voor een zeer zware beslasting van database servers. Het nadeel is dat de applicatie die Ado.Net gebruikt genoeg geheugen moet hebben om vlot te blijven werken.
Om deze 'offline' manier van werken te bewerkstelligen zijn er objecten die een actieve connectie naar de database kunnen aanmaken (connection, command, datareader) en objecten die voor de opslag van de gegevens zorgen in het geheugen (Dataset, dataTable). De TableAdapter is een snelle manier om een DataTable te vullen met gegevens uit een database. De DataView slaat geen gegevens op, maar is enkel een manier om gegevens in een DataTable te raadplegen.
De belangrijke objecten opgenomen in ADO.NET:
- Connection - maakt het contact met een gegevensbron.
- Command - maakt commando's en query's naar een gegevensbron.
- DataReader - leest stromen van tekst uit de gegevensbron.
- DataSet - een dataset is een verzameling van DataTable objecten.
- DataTable - een tabel in het geheugen zoals deze in een database kan voorkomen.
- DataView - maakt het mogelijk om in een DataTable te sorteren en filteren.
- DataAdapter - zorgt voor een vertaling van verzoeken vanuit de ADO.NET-laag naar de database en omgekeerd.