Я изучал, какой слой данных использовать для нового веб-проекта, который я проектирую, и мне очень интересно взглянуть на включение LINQ в SQL. Его очевидная простота, гибкость и дизайнерская поддержка действительно привлекательны, и неявная привязка к SQL Server хороша.
Однако недавно было объявлено, что LINQ to SQL отойдет на задний план к Entity Framework теперь, когда он передан команде ADO.NET (http://blogs.msdn.com/adonet/archive/2008/10/29/update-on-linq-to-sql-and-linq-to-entities-roadmap.aspx). Конечно, он будет поддерживаться в будущее, но вряд ли он увидит гораздо больше разработок.
Имея это в виду, вы бы порекомендовали мне использовать эту технологию для моего проекта, или стоит выбрать альтернативный ORM (nHibernate?) Или вручную кодировать общий DAL?
Сам проект основан на ASP.NET и SQL Server 2005/2008 и, возможно, будет использовать MVC, хотя он все еще находится в стадии бета-тестирования. Это персональный проект, база данных не будет слишком сложной, и в основном она будет использоваться в качестве прототипа для изучения технологий будущего .NET. Я буду основывать будущие проекты на том, что я узнаю из этого, поэтому выбор, который я сделаю, повлияет на более масштабные решения.
И да, я понимаю, что Microsoft, вероятно, завтра все равно выпустит совершенно новую технологию доступа к данным! ;)