Operatoren
Distinct
- Keine doppelten Werte in Liste
Abfragesyntax
var query15 = (from c in cities
select c).Distinct();
foreach (var item in query15)
Console.WriteLine($"City: {item.CityName}");
Erweiterungsmethodensyntax
var query16 = cities.Distinct();
foreach (var item in query16)
Console.WriteLine($"City: {item.CityName}");
Union
- Zwei Listen verbinden
- doppelte Werte ignorieren.
Abfragesyntax
string[] otherFirstNames = { "Anne", "David", "Max", "Ludger" };
var query17 = (from c in customers
select new { c.Firstname }).Union(
from o in otherFirstNames
select new { Firstname = o });
foreach (var item in query17)
Console.WriteLine($"Firstname: {item.Firstname}");
Erweiterungsmethodensyntax
string[] otherFirstNames = { "Anne", "David", "Max", "Ludger" };
var query18 = customers
.Select(c => new { c.Firstname })
.Union(
otherFirstNames
.Select(o => new { Firstname = o }));
foreach (var item in query18)
Console.WriteLine($"Firstname: {item.Firstname}");
Intersect
- Zwei Listen verbinden
- Nur Werte in neuer Liste, die in beiden vorkommen
Abfragesyntax
string[] otherFirstNames2 = { "Anne", "David", "Max", "Ludger", "Julia" };
var query19 = (from c in customers
select new { c.Firstname }).Intersect(
from o in otherFirstNames2
select new { Firstname = o });
foreach (var item in query19)
Console.WriteLine($"Firstname: {item.Firstname}");
Erweiterungsmethodensyntax
string[] otherFirstNames2 = { "Anne", "David", "Max", "Ludger", "Julia" };
var query20 = customers
.Select(c => new { c.Firstname })
.Intersect(
otherFirstNames2
.Select(o => new { Firstname = o }));
foreach (var item in query20)
Console.WriteLine($"Firstname: {item.Firstname}");
Except
- Zwei Listen verbinden
- Nur Werte in neuer Liste, die sich unterscheiden
Abfragesyntax
string[] otherFirstNames3 = { "Anne", "David", "Max", "Ludger", "Julia" };
var query21 = (from c in customers
select new { c.Firstname }).Except(
from o in otherFirstNames3
select new { Firstname = o });
foreach (var item in query21)
Console.WriteLine($"Firstname: {item.Firstname}");
Erweiterungsmethodensyntax
string[] otherFirstNames3 = { "Anne", "David", "Max", "Ludger", "Julia" };
var query22 = customers
.Select(c => new { c.Firstname })
.Except(
otherFirstNames2
.Select(o => new { Firstname = o }));
foreach (var item in query22)
Console.WriteLine($"Firstname: {item.Firstname}");