*
// ,
// , :
// , , , class Transport {
public string Name { get; set; } public string How { get; set; }
public Transport(string n, string h) {
Name = n;
How = h;
}
}
class GroupJoinDemo { static void Main() {
// , string[] travelTypes = {
"",
"",
"",
"",
};
// .
Transport[] transports = { 1
new Transport("", ""), new Transport ("", ""), new Transport("", ""), new Transport("", ""), new Transport("", ""), new Transport("", ""), new Transport("", ""), new Transport("", ""), new Transport("", "")
};
// , //
// , var byHow = from how in travelTypes
Join trans in transports on how equals trans.How into 1st
select new { How = how, Tlist = 1st };
// , foreach(var t in byHow) {
Console.WriteLine(" <{0} > :", t.How);
Foreach(var m in t.Tlist)
Console.WriteLine(" " + m.Name);
Console.WriteLine();
}
}
}
.
< > :
< > :
< > :
< > :
, , .
var byHow = from how in travelTypes
Join trans in transports on how equals trans.How into 1st
select new { How = how, Tlist = 1st };
. from how travelTypes. , travelTypes : , , . join . , , ^ . into join , . 1 st. , select , how ( ) . foreach.
|
|
foreach(var t in byHow) {
Console.WriteLine(" <{0} > :", t.How);
Foreach(var m in t.Tlist)
Console.WriteLine(" " + m.Name);
Console.WriteLine();
}
, , , . .
, , #. , , . , , .
System. Linq. Enumerable IEnumerable<T>. ( System. Linq. Queryable, IQueryable<T>, .) , . C# 3.0 . , , IEnumerable<T>.
Enumerable , , . . , , , , . . v
Select
Select( selector)
Where
Where( predicate)
Orderby
OrderBy( keySelector) OrderByDescending( keySelector)
Join
Join (inner, outerKeySelector, innerKeySelector, resultSelector)
Group
GroupBy( keySelector)
Join (), , Func<T, TResultx , :
delegate TResult Funccin , out TResult>( arg)
TResult , , . selector, predicate keySelector , . , Where () predicate . . , .
Join () . (inner) , , Join (). outerKeySelector, innerKeySelector. resultSelector. outerKeySelector Func<T0uter, >, innerKeySelector Func<TInner, >, ^ resultSelector Func<T0uter, Tinner, TResult>, TOuter ; Tinner ; TResult , .
|
|
, Fun , . -. 15, - , , , , , C# - , Fun . - , , .
-, , , C# . . . , Where () Select () .
// .
// .