I have a question, is the linq technology in asp.net 2008 is the cont. to sql? I mean, are the tables directly called via sql faster or the ones called via linq?
LINQ is a core languag feature of C# and VB.NET. As such it has nothing to do with SQL. But as a generalized query feature there exists multiple ways to use that feature to query databases. One such way is called LINQ to SQL.
LINQ to SQL is built on to of the SQL Server .NET API (in System.Data.SqlClient). So expect a native coded equivalent to be slightly faster (less overhead). However, LINQ to SQL may be smarter than you and will sometimes be able to query the database in one roundtrip without unduly skewing the program structure.
Yes, i will have to agree with honeymonster.
LINQ gets converted to TSQL on the fly. So at the end it pretty much the same thing. Linq just makes it easier for you, and is very clever and usually generates TSQL better than most developers and can sometimes even perform better that a Sproc that is written badly.
Compiling linq queries every time on the fly on busy pages, can cause a lot of unnecessary over head and end up being slower. But thats what compiled Linq is for, so it compiles the query once and removes the overhead of doing it each time.
Agree with the above. However I would advise you to read up on Linq before starting using it and get down to the details. It looks very simple to use, but that can create a large overhead to your application. By learning the insides and outs of Linq it will be a great tool in your toolbox.
I would also recommend to have a look on ADO.NET Entity Framework, the next step for Linq. You can get information here
http://msdn.microsoft.com/en-us/library/aa697427(VS.80).aspx
And as for learning Linq, this book is a must have:
Linq forum:
http://www.manning-sandbox.com/forum.jspa?forumID=302
Hope it helps
Cheers