Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Jika skema DataSet diketahui pada waktu desain aplikasi, kami sarankan Anda menggunakan DataSet yang diketik saat menggunakan LINQ ke DataSet. Tipe DataSet merupakan kelas yang diturunkan dari DataSet. Dengan demikian, ia mewarisi semua metode, peristiwa, dan properti dari DataSet. Selain itu, DataSet yang diketik kuat menyediakan metode, kejadian, dan properti yang berjenis kuat. Ini berarti Anda dapat mengakses tabel dan kolom berdasarkan nama, alih-alih menggunakan metode berbasis koleksi. Ini membuat kueri lebih sederhana dan lebih mudah dibaca. Untuk informasi selengkapnya, lihat Himpunan Data Yang Ditik.
LINQ ke Himpunan Data juga mendukung menjalankan kueri terhadap tipe DataSet. Dengan mengetik DataSet, Anda tidak perlu menggunakan metode generik Field atau metode SetField untuk mengakses data kolom. Nama properti tersedia pada waktu kompilasi karena informasi jenis disertakan dalam DataSet. LINQ ke DataSet menyediakan akses ke nilai kolom dengan tipe yang benar, sehingga kesalahan ketidakcocokan tipe dapat terdeteksi saat kode dikompilasi daripada saat runtime.
Sebelum anda bisa mulai mengkueri yang ditik DataSet, Anda harus membuat kelas dengan menggunakan DataSet Designer di Visual Studio. Untuk informasi selengkapnya, lihat Membuat dan mengonfigurasi Himpunan Data.
Contoh
Contoh berikut menunjukkan kueri pada objek bertipe DataSet:
var query = from o in orders
where o.OnlineOrderFlag == true
select new { o.SalesOrderID,
o.OrderDate,
o.SalesOrderNumber };
foreach(var order in query)
{
Console.WriteLine("{0}\t{1:d}\t{2}",
order.SalesOrderID,
order.OrderDate,
order.SalesOrderNumber);
}
Dim orders = ds.Tables("SalesOrderHeader")
Dim query = _
From o In orders _
Where o.OnlineOrderFlag = True _
Select New {SalesOrderID := o.SalesOrderID, _
OrderDate := o.OrderDate, _
SalesOrderNumber := o.SalesOrderNumber}
For Each Dim onlineOrder In query
Console.WriteLine("{0}\t{1:d}\t{2}", _
onlineOrder.SalesOrderID, _
onlineOrder.OrderDate, _
onlineOrder.SalesOrderNumber)
Next