The code samples
From Chris, the AS400 expert:-
"Now, I had a look at the LINQ samples, and as far as I can tell, for an array with a small amount of numbers in it, it can have it's uses. For querying a database with lots of tables and millions of records? Hah! forget it. Just look at the samples, first you have the "GetProductList()" function which gets ALL your data to your client, and then the piece of LINQ, which looks like some weird sort of iteration construct, gets you the records you need. Who in his right mind thought thàt was a good idea?? Anyway, can we also see what's in the GetProductList() function? Some good old SQL maybe ;-)"
Oh for God's sake - they're SAMPLES!!! Add a parameter to the GetProductList() method and it becomes at least a little bit more real-world. No-one is suggesting that they're good examples of how to architect an application, they're just examples of code. Why don't you blame them for not having security checks or logging in the samples as well? The samples aren't the bible, you are expected to adapt them to your own requirements...
Read Uffe's post, above. He covers the technical details very well. You've still got all your SQL, it's still there if you need it including Stored Procedures. Linq to SQL is just a very convenient syntax for querying databases, and it's only a part of what Linq is all about.