0Pricing
C# Academy · Ders

LINQ önizlemesi: Where, Select, OrderBy, Take/Skip; ertelenmiş yürütme

IEnumerable üzerinde küçük LINQ işlem hatları oluşturun: Where ile süzün, Select ile dönüştürün, OrderBy ile sıralayın ve ertelenmiş yürütme ile somutlaştırma arasındaki farkı öğrenin.

LINQ önizlemesi: Where, Select, OrderBy, Take/Skip; ertelenmiş yürütme, CoddyKit'te ücretsiz bir C# Academy dersidir. Bu, 3 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, C# Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. C# Academy kursu toplamda 3 dersten oluşur.

LINQ genel bakışı

Amaç: Verileri filtrelemek, dönüştürmek ve sıralamak için küçük LINQ işlem zincirleri kullanın.

  • Where (filtreleme)
  • Select (eşleme)
  • OrderBy, Take/Skip
  • Ertelenmiş yürütme ve sonuçları somutlaştırma

Where ve Select

Önce Where (filtreleme), ardından Select (dönüştürme) zincirini kurun. Soldan sağa okuyun.

using System;
using System.Linq;

public class Program
{
  public static void Main(string[] args)
  {
    int[] data = new int[] { 1, 2, 3, 4, 5, 6 };

    // Filter even numbers, then square them
    var query = data.Where(x => x % 2 == 0)
                    .Select(x => x * x);

    foreach (int n in query)
    {
      Console.WriteLine(n); // 4, 16, 36
    }
  }
}

OrderBy ve Take

OrderBy (ve ThenBy) ile sıralayın, Take ile sınırlandırın.

using System;
using System.Linq;

public class Program
{
  public static void Main(string[] args)
  {
    string[] names = new string[] { "Zoe", "Ada", "Alan", "Bob" };

    var top2 = names.OrderBy(s => s.Length) // shortest first
                    .ThenBy(s => s)         // tie-breaker
                    .Take(2);

    foreach (string s in top2)
    {
      Console.WriteLine(s); // Ada, Bob
    }
  }
}

Yansıtma (anonim tür)

Select, şekli hızlıca değiştirmek için anonim nesneler oluşturabilir (Word, Length).

using System;
using System.Linq;

public class Program
{
  public static void Main(string[] args)
  {
    string[] words = new string[] { "map", "filter", "reduce" };

    var info = words.Select(w => new { Word = w, Length = w.Length });

    foreach (var x in info)
    {
      Console.WriteLine(x.Word + " (" + x.Length + ")");
    }
  }
}

Ertelenmiş yürütme

Ertelenmiş: Sorgu, yineleme yaptığınızda çalışır. Numaralandırmadan önce kaynakta yapılan değişiklikler sonuçları etkiler.

using System;
using System.Linq;
using System.Collections.Generic;

public class Program
{
  public static void Main(string[] args)
  {
    List<int> numbers = new List<int> { 1, 2, 3 };

    var q = numbers.Where(x => x > 1); // not executed yet

    numbers.Add(4); // modify source before enumeration

    foreach (int x in q) // executes here
    {
      Console.WriteLine(x); // 2, 3, 4
    }
  }
}

Sonuçları somutlaştırma ve söz dizimi

Sonuçları yürütüp depolamak için ToList/ToArray kullanın. Sorgu söz dizimi, aynı işlem zincirini yazmanın başka bir yoludur.

using System;
using System.Linq;

public class Program
{
  public static void Main(string[] args)
  {
    int[] data = new int[] { 3, 1, 2 };

    // Method syntax + materialize
    var sorted = data.OrderBy(x => x).ToList(); // executes now
    data[0] = 100; // will not affect 'sorted' (already materialized)

    foreach (int n in sorted) { Console.WriteLine(n); } // 1,2,3

    // Query syntax (equivalent)
    var query =
      from x in data
      where x < 50
      select x * 2;

    foreach (int n in query) { Console.WriteLine(n); } // 2,4
  }
}

Ertelenmiş yürütme ne anlama gelir

Hızlı kontrol: Çoğu LINQ işleçlerinin ertelenmiş olması ne anlama gelir?

Özet

Özet: Where, Select, OrderBy ve Take/Skip ile işlem zincirleri oluşturun. LINQ ertelenmiştir; kararlı sonuçlara ihtiyaç duyduğunuzda ToList/ToArray ile sonuçları somutlaştırın.

Sıkça Sorulan Sorular

“LINQ önizlemesi: Where, Select, OrderBy, Take/Skip; ertelenmiş yürütme” dersi ücretsiz mi?

Evet — “LINQ önizlemesi: Where, Select, OrderBy, Take/Skip; ertelenmiş yürütme” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve C# Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. C# Academy kursu toplamda 3 dersten oluşur.

“LINQ önizlemesi: Where, Select, OrderBy, Take/Skip; ertelenmiş yürütme” dersinde ne öğreneceğim?

IEnumerable üzerinde küçük LINQ işlem hatları oluşturun: Where ile süzün, Select ile dönüştürün, OrderBy ile sıralayın ve ertelenmiş yürütme ile somutlaştırma arasındaki farkı öğrenin. C# Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

C# Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te C# Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 3 dersinin 3. dersidir.

“LINQ önizlemesi: Where, Select, OrderBy, Take/Skip; ertelenmiş yürütme” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu C# Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her C# Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Diziler, dilimleme, List , Dictionary
  2. foreach kalıpları ve koleksiyon başlatıcıları
  3. LINQ önizlemesi: Where, Select, OrderBy, Take/Skip; ertelenmiş yürütme
← C# Academy Sayfasına Dön