3 ms·
LINQ in C# supports a function-based syntax for querying. E.g. instead of SELECT foo, bar FROM baz WHERE zig = 7 You can write db.baz.Where(baz => baz.
by goto11 5y ago
LINQ in C# supports a function-based syntax for querying. E.g. instead of
SELECT foo, bar FROM baz WHERE zig = 7
You can write
db.baz.Where(baz => baz.zig == 7).Select(baz => new { baz.foo, baz.bar });
It does have some nice properties compared to SQL, but it also very quickly becomes incomprehensible. E.g. the join syntax in SQL:
SELECT baz.foo, wawa.bar FROM baz JOIN wawa ON baz.id = wawa.baz_id
looks like:
db.baz.GroupJoin(db.wawa, baz=>baz.id, wawa=>wawa.baz_id, (baz, wawa)=>new { baz.foo, wawa.bar} );
I don't think anybody would find this easier, and C# actually added additional custom syntax, so you could use more SQL-like syntax instead of the method-based syntax.