Я пытаюсь принять обоснованное решение о том, какую ORM использовать для ряда унаследованных приложений, за которые я отвечаю за портирование на MVC 2. Я рассмотрел ORM: LINQ to SQL, LINQ to Entities и nHibernate,L2S, казалось, был самым простым, но я нашел множество статей и записей в блогах, в которых говорилось, что Microsoft больше не будет обновлять его после .NET 3.5.Имея это в виду, я немного поработал с Entities, но обнаружил, что это сложно и слишком сложно для небольших приложений, с которыми я работаю (то же самое с nHibernate).Недавно я купил «Pro ASP.NET MVC 2 Framework» Стивена Сандерсона, в котором он решил использовать LINQ to SQL в качестве своего ORM, в какой-то момент заявив:
I'm aware that some developers have expressed concerns that Microsoft might
deprecate LINQ to SQL in favor of Entity Framework. However, Microsoft included
and enhanced LINQ to SQL in .NET 4, so these fears cannot be entirely justified.
Я не знал, что они сделалиизменения, и я не удосужился посмотреть, так как общее мнение сообщества, казалось, было то, что L2S приближается к концу срока службы, чтобы быть замененным L2E.Дэмиен Гвард написал о некоторых изменениях в своем блоге (http://damieng.com/blog/2009/06/01/linq-to-sql-changes-in-net-40) для тех, кто заинтересован.
Я надеюсь, что кто-то может пролить свет на позицию Microsoft в отношении LINQ to SQL.Портирование и обновление имеют (примерно) 8-10 лет жизни, поэтому я предпочел бы принять технологию, которая не будет заброшена в этот период времени, и оставить мои замены в затруднительном положении. (Конечно, если у кого-то естьдругие рекомендации для небольших магазинов - в нашей базе данных менее 5 миллионов записей - я бы хотел их услышать.)