Slik konverterer LINQ resultater til en Datatable

Slik konverterer LINQ resultater til en Datatable


Konvertering språk Integrated Query (LINQ) resultater til en Datatable kan enkelt oppnås ved å bruke et datasett og noen få andre klasser. En Datatable representerer en tabell over i-minne data som kan brukes til mange ting som fyller et Datagridview kontroll. En Datagridview kontroll viser data ved hjelp av rader og kolonner. I Visual Basic.NET, kan du søke informasjon fra en Access-database og lagre den i et datasett. Du kan søke i datasettet ved hjelp av LINQ to SQL og sløyfe gjennom resultatene for å lagre dem i en Datatable.

Bruksanvisning

1 Start Microsoft Visual Studio, klikk på "New Project" fra den venstre delen av skjermen og utvide "Visual Basic" under "Installerte maler." Klikk på "Windows" og dobbeltklikk på "Windows Forms Application" fra midten av dialogvinduet for å opprette et nytt prosjekt.

2 Dobbeltklikk på "Datagridview" for å legge til en ny kontroll i skjemaet. Dobbeltklikk på "Button" for å legge til en ny knapp i skjemaet. Dobbeltklikk på "Button1" for å lage et klikk hendelsen.

3 Legg til følgende linje med kode på toppen av modulen for å importere navnerom:

importen System.Data.OleDb

4 Legg til følgende kode inne i klikkhendelsen for å opprette en tilkobling til en Access-database og søke en tabell:

Dim connString As String = "Provider = Microsoft.ACE.OLEDB.12.0; Data Source = C: \ North 2007.accdb"

Dim myConnection As OleDbConnection = New OleDbConnection

Dim ds Som datasett

Dim da Som OleDbDataAdapter

myConnection.ConnectionString = connString

da = Ny OleDbDataAdapter ( "Select * Fra Leverandører", myConnection)

ds = nytt datasett

da.Fill (ds, "Leverandør")

myConnection.Close ()

5 Kopier og lim inn følgende kode for å opprette en ny Datatable med én kolonne:

Dim table As DataTable = New DataTable("SupplierTable")

Dim kolonne Som DataColumn

Dim rad Som DataRow

kolonne = Ny DataColumn ()

column.DataType = System.Type.GetType ( "System.String")

column.ColumnName = "Company"

column.Caption = "Company"

column.ReadOnly = False

table.Columns.Add (kolonne)

6 Bruk LINQ å få SQL spørringsresultatene:

Dim supplierQuery = _

Fra cust I ds.Tables ( "Leverandør"). AsEnumerable _

Velg cust! Selskapet

7 Legg INQ til SQL-resultater til Datatable og vise resultatene gjennom Datagridview kontroll:

row = table.NewRow()

For hver cust I supplierQuery

rad ( "Selskapet") = cust

table.Rows.Add (rad)

p = table.NewRow ()

neste

Me.DataGridView1.DataSource = tabellen

8 Trykk "F5" for å kjøre programmet og klikk "Button1" for å se resultatene.