Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Language-Integrated Sorgusu (LINQ), veritabanı bilgilerine erişmeyi ve sorguları yürütmeyi kolaylaştırır.
Aşağıdaki örnekte, SQL Server veritabanında sorgular gerçekleştiren yeni bir uygulamanın nasıl oluşturulacağı gösterilmektedir. Örnek, Aggregate ve Group By yan tümcelerini kullanarak sonuçları sayar, toplar ve ortalamasını alır. Daha fazla bilgi için bkz. Aggregate Clause ve Group By Clause.
Bu makaledeki örneklerde Northwind örnek veritabanı kullanılmıştır. Veritabanını edinmek için bkz. Örnek Veritabanlarını İndirme..
Not
Bilgisayarınız, aşağıdaki yönergelerde bazı Visual Studio kullanıcı arabirimi öğeleri 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. IDE kişiselleştirme.
Veritabanına bağlantı oluşturmak için
Visual Studio'da, Görünüm menüsünde /Veritabanı Gezgini tıklayarak /Veritabanı Gezgini açın.
Sunucu Gezgini/Veri Bağlantıları sağ tıklayın ve Bağlantı Ekleöğesine tıklayın.
Northwind örnek veritabanı için geçerli bir bağlantı belirtin.
LINQ to SQL dosyası içeren bir proje eklemek için
Visual Studio'da, Dosya menüsünde Yeni üzerine gelin ve Projeöğesine tıklayın. Proje türü olarak Visual Basic Windows Forms Uygulaması'ni seçin.
Project menüsünde Yeni Öğe Ekletıklayın. LINQ to SQL Sınıfları öğe şablonunu seçin.
dosyayı
northwind.dbmlolarak adlandırın. Ekle'ye tıklayın. Nesne İlişkisel Tasarımcısı (O/R Tasarımcısı) northwind.dbml dosyası için açılır.
O/R Tasarımcısı'na sorguya tablo eklemek için
Sunucu Gezgini/Veritabanı Gezginiiçinde, Northwind veritabanı bağlantısını genişletin. Tablolar klasörünü genişletin.
O/R Tasarımcısı'nı kapattıysanız, daha önce eklediğiniz northwind.dbml dosyasına çift tıklayarak yeniden açabilirsiniz.
Müşteriler tablosuna tıklayın ve tasarımcının sol bölmesine sürükleyin. Siparişler tablosuna tıklayın ve tasarımcının sol bölmesine sürükleyin.
Tasarımcı, projeniz için yeni
CustomerveOrdernesneleri oluşturur. Tasarımcının tablolar arasındaki ilişkileri otomatik olarak algılayıp ilgili nesneler için alt özellikler oluşturduğuna dikkat edin. Örneğin IntelliSense,Customernesnesinin bu müşteriyle ilgili tüm siparişler için birOrdersözelliği olduğunu gösterir.Değişikliklerinizi kaydedin ve tasarımcıyı kapatın.
Projenizi kaydedin.
Veritabanını sorgulamak ve sonuçları görüntülemek için kod eklemek için
Araç Kutusu'den, bir adet DataGridView denetimini, projeniz için varsayılan Windows Formu olarak adlandırılan Form1'e sürükleyin.
Formun
Loadolayına kod eklemek için Form1'e çift tıklayın.O/R Tasarımcısı'na tablo eklediğinizde tasarımcı projeniz için bir DataContext nesnesi ekledi. Bu nesne, bu tablolara erişmek ve her tablo için tek tek nesnelere ve koleksiyonlara erişmek için ihtiyacınız olan kodu içerir. Projenizin DataContext nesnesi, .dbml dosyanızın adına göre adlandırılır. Bu proje için DataContext nesnesi
northwindDataContextolarak adlandırılır.Kodunuzda bir DataContext örneği oluşturabilir ve O/R Tasarımcısı tarafından belirtilen tabloları sorgulayabilirsiniz.
Loadözellikleri olarak sunulan tabloları sorgulamak ve sonuçları saymak, toplamak ve ortalamasını almak için aşağıdaki kodu DataContext olayına ekleyin. Örnek, tek bir sonucu sorgulamak içinAggregateyan tümcesini ve gruplandırılmış sonuçların ortalamasını göstermek içinGroup Byyan tümcesini kullanır.Dim db As New northwindDataContext Dim msg = "" Dim londonCustomerCount = Aggregate cust In db.Customers Where cust.City = "London" Into Count() msg &= "Count of London Customers: " & londonCustomerCount & vbCrLf Dim averageOrderCount = Aggregate cust In db.Customers Where cust.City = "London" Into Average(cust.Orders.Count) msg &= "Average number of Orders per customer: " & averageOrderCount & vbCrLf Dim venezuelaTotalOrders = Aggregate cust In db.Customers Where cust.Country = "Venezuela" Into Sum(cust.Orders.Count) msg &= "Total number of orders from Customers in Venezuela: " & venezuelaTotalOrders & vbCrLf MsgBox(msg) Dim averageCustomersByCity = From cust In db.Customers Group By cust.City Into Average(cust.Orders.Count) Order By Average DataGridView1.DataSource = averageCustomersByCity 'Another way to grab the count and sum londonCustomerCount = (From cust in db.Customers Where cust.City = "London").Count() venezuelaTotalOrders = (From cust in db.Customers Where cust.Country = "Venezuela" Select cust.Orders).Sum()Projenizi çalıştırmak ve sonuçları görüntülemek için F5 tuşuna basın.