A good thing in LINQ to SQL was a fast and reliable way to map database tables and convert them into classes accessible from c# project. However it is no longer recommended to create projects using LINQ to SQL.
What is its substitute? What kind of tool should I use in VS 2010 today if I want to have the same functionality as I had with LINQ to SQL?
Why not??
Linq-to-SQL is still around in .NET 4, even with bugfixes and improvements. For small projects, it’s still a very viable solution!
Yes, there won’t be much further development on it – but it’s still there, it still works, and for many projects, it’s a perfect fit – just use it!
If you want to have something "future-proof", you’ll need to look at Entity Framework v4.
See this blog post with a ton of links on EF4.
EF4 looks very promising – but remember: it’s always a two-stage mapping process (while Linq-to-SQL is a straight 1:1 mapping from table to object). This might be great if you need the flexibility, but it might be a drawback since it adds a certain overhead.
If you really don’t want to keep using Linq-to-SQL, you might also want to check out SubSonic which is another simple, easy-to-use, straightforward 1:1 OR-mapper