Nasıl yapılır: Bir LINQ Sorgu Sonucunu Belirli Bir Tür Olarak Döndürme (Visual Basic)
Dil tümleştirilmiş sorgu (LINQ) veritabanı bilgilerini erişmek ve sorguları yürütmek kolaylaştırır.Varsayılan olarak, anonim bir tür nesnelerin listesini LINQ sorguları döndürür.Bir sorgu kullanarak belirli bir türü listesini almak belirtebilirsiniz Select yan tümcesi.
Aşağıdaki örnek, bir sql Server veritabanında sorgular gerçekleştirir ve sonucu adlandýrýlmýþ özel bir tür projeler yeni bir uygulama oluşturulması gösterilmiştir.Daha fazla bilgi için, bkz. Anonim Türleri (Visual Basic) ve Select Tümcesi (Visual Basic).
Bu konudaki örnek Northwind örnek veritabanını kullanır.Northwind örnek veritabanındaki geliştirme bilgisayarınızda yoksa, buradan yükleyebilirsiniz Microsoft Yükleme Merkezi'nden Web sitesi.Yönergeler için bkz: Downloading Sample Databases.
[!NOT]
Bilgisayarınız, aşağıdaki yönergelerde yer alan Visual Studio kullanıcı arabirimi öğelerinden bazıları için farklı adlar veya konumlar gösterebilir. Sahip olduğunuz Visual Studio sürümü ve kullandığınız ayarlar bu öğeleri belirler. Daha fazla bilgi için, bkz. Visual Studio'da Geliştirme Ayarlarını özelleştirme.
Bir veritabanı bağlantısı oluşturmak için
Visual Studio'da açık Server Explorer/Database Explorer tıklatarak Server Explorer/Database Explorer , View menü.
Sağ Veri bağlantıları , Server Explorer/Database Explorer 'ı Add Connection.
Northwind örnek veritabanındaki geçerli bir bağlantı belirtin.
LINQ sql dosyası içeren bir proje eklemek için
Visual Studio, Dosya menüsü, Yeni 'ı Proje.Visual Basic'i seçin Windows Forms uygulamasý proje türü.
Proje menüsünde, Yeni Öğe Ekle'yi tıklatın.Seçin sql sınıfları için LINQ Item template.
Dosya adı northwind.dbml.Ekle‘yi tıklatın.Nesne ilişkisel Tasarımcısı (o/r Tasarımcısı) için northwind.dbml dosyası açılır.
o/r Tasarımcısı sorgu tablolar eklemek için
İçinde Server Explorer/Database Explorer, Northwind veritabanı bağlantısı'nı genişletin.Genişletme Tablo klasörü.
o/r Tasarımcısı kapattıysanız, daha önce eklenen northwind.dbml dosyasını çift tıklatarak yeniden açabilirsiniz.
Müşteriler tablosunu tıklatın ve tasarımcı sol bölmesine sürükleyin.
Tasarımcı oluşturur Yeni bir Customer projeniz için nesne.Sorgu sonucu olarak planlayabilirsiniz Customer türü veya oluşturduğunuz bir türü.Bu örnek, bir sonraki yordamda yeni bir tür oluşturmak ve sorgu sonucu olarak bu tür proje.
Değişikliklerinizi kaydetmek ve designer'ı kapatın.
Projeyi kaydedin.
Veritabanını sorgulamak ve sonuçları görüntülemek için kod eklemek için
Dan araç, sürükleyin bir DataGridView üzerine Form1 projeniz için varsayılan Windows Form denetimi.
Form1'i Form1 sınıf değiştirmek için çift tıklatın.
Sonra End Class Form1 sınıfının deyimi oluşturmak için aşağıdaki kodu ekleyin bir CustomerInfo Bu örnek sorgu sonuçları barındırmak için yazın.
Public Class CustomerInfo Public Property CompanyName As String Public Property ContactName As String End Class
o/r Tasarımcısı tabloları eklendiğinde tasarımcıya eklenen bir DataContext projenize nesnesi.Bu nesne, bu tabloları erişmek ve ayrı ayrı nesnelerin ve koleksiyonların her tablo için erişim için gereken kodunu içerir.DataContext Nesne projenizin adlı .dbml dosyasının adını esas.Bu proje için DataContext nesne adındaki northwindDataContext.
Bir örneğini oluşturmak DataContext kodu ve sorgu o/r Tasarımcısı tarafından belirtilen tablolar.
De Load Form1 sınıfının olay veri içeriğiniz özellikleri olarak sergilenen tabloları sorgulamak için aşağıdaki kodu ekleyin.Select Sorgu yan tümcesinde yeni oluşturacaktır CustomerInfo türü bir sorgu sonucu, her öğe için anonim tür yerine.
Dim db As New northwindDataContext Dim customerList = From cust In db.Customers Where cust.CompanyName.StartsWith("L") Select New CustomerInfo With {.CompanyName = cust.CompanyName, .ContactName = cust.ContactName} DataGridView1.DataSource = customerList
Projenizi çalıştırmak ve sonuçları görüntülemek için F5 tuşuna basın.
Ayrıca bkz.
Görevler
Walkthrough: Creating LINQ to SQL Classes (O/R Designer)
Kavramlar
DataContext Methods (O/R Designer)