Konvertera Language Integrated Query ( LINQ ) resultat till en DataTable kan enkelt göras genom att använda ett DataSet och några andra klasser . En DataTable representerar en tabell över in - memory data som kan användas för många saker såsom befolka en DataGridView kontroll . En DataGridView kontroll visar data med rader och kolumner . I Visual Basic.NET , kan du ställa frågor om data från en Access-databas och spara den i en datamängd. Du kan söka i DataSet med LINQ till SQL och loopa igenom resultaten för att spara dem till en DataTable . Saker du behöver
Microsoft Visual Studio
Visa fler instruktioner
1
Launch Microsoft Visual Studio , klicka på " Nytt projekt " från den vänstra rutan på din datorskärm och expandera " Visual Basic " nedan " Installerade mallar . " Klicka på " Windows " och dubbelklicka på " Windows Forms Application " från mitten av dialogrutan för att skapa ett nytt projekt .
2
Dubbelklicka på " DataGridView " för att lägga till en ny kontroll till formuläret . Dubbelklicka på " knappen " för att lägga till en ny knapp i formuläret . . Dubbelklicka på " Button1 " för att skapa en click-händelse Addera 3
Lägg till följande kodrad på toppen av din modul för att importera namespace :
Import System . Data.OleDb
4
Lägg till följande kod i click-händelsen för att skapa en anslutning till en Access-databas och fråga en tabell :
Dim connString As String = " Provider = Microsoft . ACE.OLEDB.12.0 , Data Source = C : \\ Northwind 2007.accdb "
Dim MyConnection Som OleDbConnection = Nya OleDbConnection
Dim ds Som DataSet
Dim da Som OleDbDataAdapter
myConnection.ConnectionString = connString
da = Ny OleDbDataAdapter ( " SELECT * FROM leverantörer " , MyConnection ) katalog
ds = New DataSet
da . fill ( ds , " Leverantören " ) katalog
myConnection.Close ( )
5
Kopiera och klistra in följande kod för att skapa en ny DataTable med en kolumn :
Dim tabell som DataTable = Ny DataTable ( " SupplierTable " ) katalog
Dim kolumn Som DataColumn
Dim rad som DataRow
kolumnen = Ny DataColumn ( ) katalog
column.DataType = System.Type.GetType ( " System.String " ) katalog
column.ColumnName = " Bolaget"
column.Caption = " Bolaget"
kolumnen . ReadOnly = False
table.Columns.Add ( kolumn )
6
Använd LINQ för att få SQL frågeresultat :
Dim supplierQuery = _
Från cust i ds.Tables ( " Leverantören " ) . AsEnumerable _
Välj cust ! Company
7
Lägg INQ till SQL resultat för din DataTable och visa resultaten genom kontrollen DataGridView :
v = table.NewRow ( ) katalog
för varje cust i supplierQuery
raden ( " Bolaget" ) = cust
tabellen . Rows.Add ( v ) katalog
v = table.NewRow ( ) katalog
Nästa
Me.DataGridView1.DataSource = bord
8
Press " F5 " för att köra programmet och klicka på " Button1 " för att se resultatet .