Я только начинаю со стека Microsoft, создающего веб-сайт в ASP.Net MVC, и до сих пор использую LINQ to SQL. Стоит ли рассматривать LINQ to Entities? Есть ли что-то особенное, чтобы предложить? Если так, то что?
Я сам расследовал эту вещь.
Вот мои выводы в двух словах
LINQ to SQL
Преимущества
Недостатки
Невозможно обновить диаграмму из базы данных, вам нужно удалить свой класс, а затем перетащить его обратно на диаграмму из БД. Это настоящая боль, если вы вообще изменили диаграмму.
Активно не разрабатывается (вместо этого они разработают Entity Framework).
Entity Framework
Имеет гораздо больше функций (наследование таблиц и т. Д.)
Может быть обновлено из базы данных
Имеет несколько провайдеров (не только SQL)
Модель можно запрашивать без использования LINQ, вы можете использовать Entity SQL
Похоже, что Microsoft вкладывает значительные средства в это и предлагает его в качестве основного способа доступа к базе данных: Обновление LINQ to SQL и LINQ to Entities Roadmap , Уточнение сообщения о L2S Futures .
Заключение
Я лично решил пойти по пути использования Entity Framework. Я купил книгу и прочитал онлайн-материал, и я очень впечатлен этим. Чтобы учиться, потребовалось немного дополнительных усилий, но преимущества действительно велики.
вот небольшое сравнение двух, есть плюсы и минусы для обоих.
http://dotnetaddict.dotnetdevelopersjournal.com/adoef_vs_linqsql.htm
Вот статья, описывающая различия между ними:
Хотя LINQ to SQL не исчезнет, Microsoft делает ставку на LINQ to Entities. По этой причине я бы пошел с LINQ to Entities.
Блог команды ADO.NET содержит больше информации по этому вопросу:
http://blogs.msdn.com/adonet/archive/2008/10/29/update-on-linq-to-sql-and-linq-to-entities-roadmap.aspx
http://blogs.msdn.com/adonet/archive/2008/10/31/clarifying-the-message-on-l2s-futures.aspx
Я перечислил эти посты в хронологическом порядке, но обязательно прочитайте хотя бы последний - на самом деле он самый важный.
Во-первых, Linq для сущности предлагает множество функциональных возможностей
Во-вторых, Microsoft вложит в это больше времени
и я уверен, что есть много других веских причин