Aracılığıyla paylaş


LINQ sorgu ifadelerini (C# Programlama Kılavuzu)

Dil ile Tümleşik Sorgu (LINQ)C# dili (Ayrıca, Visual Basic ve büyük olasılıkla diğer. doğrudan sorgulama yetenekleri bütünleştirilmesi temel teknolojiler kümesi adınet Dili).İle LINQ, bir sorgu sınıfları, yöntemleri, olayları gibi bir birinci dil yapısı vb. sunulmuştur.

Yazar bir geliştirici sorgular için en belirgin "dil ile bütünleşik" bölümünü LINQ sorgu ifadesidir.Sorgu ifadelerini bildirimsel yazılma Sorgu sözdizimi C# 3.0 sürümünde sunulan.Sorgu sözdizimini kullanarak, hatta karmaşık süzme, sıralama ve Gruplandırma kodu en az veri kaynaklarıyla işlemlerde gerçekleştirebilirsiniz.sql veritabanlarında Sorgu ve dönüşüm verilerini aynı temel sorgu ifade desenlerini kullanın ADO.NET DataSet xml belgeleri ve akış, ve.net Koleksiyonlar.

Aşağıdaki örnek, tam sorgu işlemi gösterir.Veri kaynağı oluşturma, sorgu ifadesi tanımlama ve sorgu yürütme işlemi tamamlamak içeren bir foreach ifadesi.

class LINQQueryExpressions
{
    static void Main()
    {

        // Specify the data source.
        int[] scores = new int[] { 97, 92, 81, 60 };

        // Define the query expression.
        IEnumerable<int> scoreQuery =
            from score in scores
            where score > 80
            select score;

        // Execute the query.
        foreach (int i in scoreQuery)
        {
            Console.Write(i + " ");
        }            
    }
}
// Output: 97 92 81

Temelleri hakkında daha fazla bilgi için LINQ bkz: C# [NULL]'ta C# [NULL]'taki LINQ ile çalışmaya başlama.

Sorgu ifadesi genel bakış

  • Sorgu ifadelerini sorgulamak ve verilerini dönüştürmek için kullanılabilir LINQ-veri kaynağı etkin.Örneğin, tek bir sorgunun sql veritabanından veri almak ve çıktı olarak bir xml akışı üretir.

  • Sorgu ifadelerini tanıdık birçok C# dil yapıları kullandıkları için kalıp kolaydır.Daha fazla bilgi için bkz. C# [NULL]'taki LINQ ile çalışmaya başlama.

  • Çoğu durumda çünkü derleyici onu gerçekleştirip türünü açıkça sağlaması gerekmez, ancak bir sorgu ifadesinde değişkenleri tüm kesinlikle, yazılmalıdır.Daha fazla bilgi için bkz. Tür ilişkileri LINQ sorgu işlemlerinde (C#).

  • Sorgu değişken üzerinden yineleme kadar sorgu Yürütülmeyen bir foreach ifadesi.Daha fazla bilgi için bkz. Giriş LINQ sorguları (C#).

  • Derleme zamanında sorgu ifadeleri standart sorgu işlecini yöntem çağrıları İleri C# ayrıntısında belirlenen kurallara uygun şekilde dönüştürülür.Sorgu sözdizimini kullanarak ifade herhangi bir sorgu yöntemi sözdizimi kullanılarak da belirtilebilir.Ancak, çoğu zaman daha okunabilir ve öz sorgu sözdizimi vardır.Daha fazla bilgi için, bkz. C# dil belirtiminin ve Standart sorgu işleçler genel bakış.

  • Yazdığınız bir kural olarak LINQ sorguları, öneririz mümkün olduğunda sorgu sözdizimi ve yöntemi sözdiziminin gerektiğinde kullanın.Hayır semantik vardır veya performans iki farklı formlar fark.Sorgu deyimleridir genellikle daha fazla yöntemi sözdiziminin yazılmış eşdeğer ifadeleri daha okunabilir.

  • Bazı sorgulama işlemleri gibi Count veya Max, hiçbir eşdeğer sorgu ifadesi yan tümcesi vardır ve bu nedenle bir yöntem çağrısı ifade edilen gerekir.Sorgu sözdizimi çeşitli şekillerde yöntemi sözdiziminin birleştirilebilir.Daha fazla bilgi için bkz. LINQ'te Sorgu Sözdizimi ve Yöntem Sözdizimi (C#).

  • Sorgu ifadelerini ifade ağaçları ya da sorgu uygulandığı türüne bağlı temsilciler derlenebilir.IEnumerable<T>sorgular için temsilciler derlenir.IQueryableve IQueryable<T> sorguları ifade ağaçları derlenmiş.Daha fazla bilgi için bkz. İfade ağaçları (C# ve Visual Basic).

Aşağıdaki tabloda, ortak görevler için sorgular ve kod örnekleri hakkında ek bilgi sağlayan konuları listeler.

Konu

Description

Sorgu deyimi temelleri (C# Programlama Kılavuzu)

Temel sorgu kavramları ve C# sorgu sözdizimi örnekleri sağlar.

Nasıl yapılır: LINQ sorguları yazma C#

Birkaç temel tür sorgu ifadeleri örnekleri sağlar.

Nasıl yapılır: sorgu ifadelerde (C# Programlama Kılavuzu) özel durumları işlemek

Nasıl ve ne zaman sorgu ifadesi dışında olası özel durum üretiliyor kodu taşımak.

Nasıl yapılır: birden çok kaynaktan (LINQ) nesne toplulukları doldurmak

Nasıl kullanılacağını select yeni bir tür farklı kaynaklardan gelen verileri birleştirmek için ifade.

Nasıl yapılır: Grup sorgu sonuçları (C# Programlama Kılavuzu)

Kullanmak için farklı yöntemler sunulmaktadır group yan tümcesi.

Nasıl yapılır: (C# Programlama Kılavuzu) iç içe grup oluşturma

İç içe geçmiş grupları oluşturulması gösterilmiştir.

Nasıl yapılır: bir alt sorgu bir gruplandırma işlemi (C# Programlama Kılavuzu) gerçekleştirmek

Bir sub-expression yeni bir sorgu için bir sorguda veri kaynağı olarak kullanmak nasıl gösterir.

Nasıl yapılır: Grup sonuçları bitişik anahtarları (C# Programlama Kılavuzu)

Akış veri kaynakları üzerinde gruplandırma işlemleri gerçekleştiren iş parçacıklarını standart sorgu işleç uygulamak gösterilmiştir.

Nasıl yapılır: yüklemi filtreler (C# Programlama Kılavuzu) çalışma zamanında dinamik olarak belirtin

Eşitlik karşılaştırmaları içinde kullanılacak değerleri rastgele sayıda sağlamak nasıl gösterir bir where yan tümcesi.

Nasıl yapılır: sorgu sonuçları (C# Programlama Kılavuzu) bellekte saklamak

Materialize ve mutlaka kullanmadan sorgu sonuçlarını depolamak üzere verilmektedir bir foreach döngü.

Nasıl yapılır: sorgu yöntemi (C# Programlama Kılavuzu) dönmek

Nasıl sorgu değişkenleri yöntemleri dönmek ve yöntemleri girdi parametre olarak iletin gösterir.

Nasıl yapılır: özel birleştirme (C# Programlama Kılavuzu) işlemleri

Temel doðrulama işlev herhangi bir tür birleşim işlemleri gerçekleştirmek nasıl gösterir.

Nasıl yapılır: birleştirme kullanarak bileşik anahtarları (C# Programlama Kılavuzu)

Birden fazla eşleşen anahtarı temel iki kaynağı katılma konusunda gösterir.

Nasıl yapılır: birleştirme yan tümcesi (C# Programlama Kılavuzu) sonuçları

Birleştirme işlemi tarafından üretilen bir sıra sipariş gösterilmiştir.

Nasıl yapılır: iç birleşimler (C# Programlama Kılavuzu) gerçekleştirmek

Bir iç birleşim olarak gerçekleştirmeye yönelik LINQ.

Nasıl yapılır: gruplanmış birleşimler (C# Programlama Kılavuzu) gerçekleştirmek

Gruplandırılmış bir birleştirme oluşturmak nasıl gösterir LINQ.

Nasıl yapılır: sol dış birleşimler (C# Programlama Kılavuzu) gerçekleştirmek

Bir sol dış birleşim oluşturmak nasıl gösterir LINQ.

Nasıl yapılır: sorgu ifadelerde (C# Programlama Kılavuzu) Null değerleri işleme

Null değerleri işlemek gösterilmiştir LINQ sorgular.

Ayrıca bkz.

Görevler

İzlenecek yol: Sorgular C# (LINQ) yazma

Kavramlar

C# Programlama Kılavuzu

Temel LINQ sorgu işlemleri (C#)

LINQ'te Sorgu Sözdizimi ve Yöntem Sözdizimi (C#)

Standart sorgu işleçler genel bakış

Diğer Kaynaklar

LINQ (dil ile bütünleşik sorgu)

Sorgu anahtar sözcükler (C# Reference)

Nasıl iş nesnelerine LINQ sorguları

Okuma ve yazma sorguları

bir koleksiyon nedir?

her şey bağlantı: LINQ sağlayıcılarının bir listesini