.NET 6’daki yenilikler [8]: Yeni LINQ operatörü IntersectBy()

Womanne

Member
.NET 6 What’s New serisinin sekizinci bölümü, kesişim oluşturmak için bir işleç hakkındadır.


.NET 6 serisinin son iki bölümünde DistinctBy() Ve UnionBy() işlenmiş. .NET 6’nın sağladığı IntersectBy() bazı kriterlere dayalı olarak iki kümeden bir kesişim oluşturan başka bir yeni küme operatörü.

En sevdikleri renklere sahip bir dizi insan verildiğinde

var personen = new (string Name, string Farbe)[] {
("Annalena", "grün"), ("Olaf", "rot"),
("Norbert", "rot"), ("Saskia","rot"),
("Robert", "grün"), ("Armin", "schwarz"),
("Christian", "gelb") };

ve dizeler biçiminde bir renk listesi

List<string> farben = new() { "grün", "rot" };

şimdi benimle gelebilirsin IntersectBy() çapraz oluştur:

Func<(string Name, string Farbe), string>
keySelector = x => x.Farbe;
var schnittmenge =
personen.IntersectBy(farben, keySelector).ToList();


Kavşaktaki sonuç aşağıdaki gibidir:

(Annalena, grün)
(Olaf, rot)

Bunun anlamı IntersectBy() nasıl seç DistinctBy() Ve UnionBy() yalnızca ilk eşleşen öğeyi seçin ve diğerlerini yok sayın.
()



Haberin Sonu
 
Üst