Hop til teksten

IT FJERNUNDERVISNING
- IT kurser når Du har tid!

Data Adapter

SqlDataAdapter er en speciel klasse der har til opgave at danne bro mellem DataTable klassen, der virker som en tabel i en database der lever i web-serverens hukommelse og dermed ikke har direkte forbindelse til den rigtige database/tabel. Data adapteren kan giver en to vejs forbindelse til databasen. Den kan udføre en SELECT kommando mod databasen og returnere resultatet ind i et DataTable objekt. Den kan også udføre INSERT, UPDATE og DELETE kommandoer og udtrække resultatet fra et DataTable objekt.

De mest brugte egenskaber på DataAdapteren fremgår af nedenstående tabel:

 Egenskab Beskrivelse
 SelectCommand Denne læse/skrive kommando sætter eller får et objekt af SqlCommand. Denne kommando bliver automatisk udført og resultatet fyldes i DataTable objektet
 InsertCommand  Bliver automatisk udført for at indsætte en række i SQL basen
 UpdateCommand Opdatering af en post
 DeleteCommand Slet post

SqlDataAdapter klassen har også en Fill() metode, der automatisk udfører kommandoen i SelectCommand, udtrækker resultatet og kopierer det ind i et DataTable objekt.

Et lille eksempel:

using System.Data.SqlClient;

if (!Page.IsPostBack)
    {
        DataTable minTabel = new DataTable();
        
        SqlConnection minForbindelse = new SqlConnection();
        minForbindelse.ConnectionString = 
             ConfigurationManager.ConnectionStrings["ASPNET35KursusConnectionString"].ToString();
        SqlCommand minKommando = new SqlCommand();
        minKommando.CommandText = "Select * from tblProjekter";
        minKommando.CommandType = CommandType.Text;
        minKommando.Connection = minForbindelse;

        SqlDataAdapter minAdapter = new SqlDataAdapter();
        minAdapter.SelectCommand = minKommando;
        minAdapter.Fill(minTabel);

        gvProjekter.DataSource = minTabel.DefaultView;
        gvProjekter.DataBind();

        minAdapter.Dispose();
        minKommando.Dispose();
        minForbindelse.Dispose();
    }

Imports System.Data
Imports System.Data.SqlClient
Imports System.Configuration

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    If Not Page.IsPostBack Then
        Dim minTabel As DataTable = New DataTable()

        Dim minForbindelse As SqlConnection = New SqlConnection()
        minForbindelse.ConnectionString = 
            ConfigurationManager.ConnectionStrings("ASPNET35KursusConnectionString").ToString()
        Dim minKommando As SqlCommand = New SqlCommand()
        minKommando.CommandText = "Select * from tblProjekter"
        minKommando.CommandType = CommandType.Text
        minKommando.Connection = minForbindelse
            
        Dim minAdapter As SqlDataAdapter = New SqlDataAdapter()
        minAdapter.SelectCommand = minKommando
        minAdapter.Fill(minTabel)

        gvProjekter.DataSource = minTabel.DefaultView
        gvProjekter.DataBind()

        minAdapter.Dispose()
        minKommando.Dispose()
        minForbindelse.Dispose()
    End If
End Sub

Når du har betalt for kurset får du adgang til øvelser til hver lektion. Og når du har fået godkendt din besvarelse får du desuden adgang til mine løsningsforslag med ekstra tips og trix.