Действительно ли это - плохая идея вскочить в LINQ к SQL теперь?

Это могло бы зависеть от механизма. MySQL, например, применяется, НАЛИЧИЕ почти длятся в цепочке, означая, что нет почти никакой комнаты для оптимизации. От руководство :

пункт НАЛИЧИЯ применяется почти в последний раз, непосредственно перед тем, как объекты отправляются клиенту без оптимизации. (ПРЕДЕЛ применяется после НАЛИЧИЯ.)

я полагаю, что это поведение является тем же в большинстве механизмов базы данных SQL, но я не могу гарантировать его.

5
задан Michael Maddox 4 October 2009 в 09:58
поделиться

5 ответов

LINQ to Entities is ready for primetime, and not necessarily much steeper to learn. However, LINQ to SQL is fine too, you'll learn a lot that will stay useful as you move forward.

In short, choose whatever suits the project best. If SQL Server is and will remain the DB platform, and if there's no need for remapping tables or other sophisticated tricks, LINQ to SQL will get you there very fast. It's also very efficient.

11
ответ дан 18 December 2019 в 11:58
поделиться

Microsoft issued a statement that LINQ to SQL has reached its end of life and will no longer be providing any major improvements to it. Check out their official sugar-coated statement here. The Entity Framework will be taking its place.

Here is the MSDN article on how to port a LINQ to SQL project over to the Entity Framework.

0
ответ дан 18 December 2019 в 11:58
поделиться

Возможно, LINQ to SQL оптимизирован для SQL-сервера, поэтому он может лучше подходить для вашей проблемы, чем Entity Framework.

Однако в долгосрочной перспективе вы должны учитывать как долго ваше приложение будет работать и какова будет стоимость «обновления».

0
ответ дан 18 December 2019 в 11:58
поделиться

Люди, которые говорят, что LinqToSql требует минимального обучения, не совсем честны с вами. ADO.NET требует значительного обучения. Любая ORM требует значительного обучения. После того, как вы использовали один ORM, не так уж сложно выбрать другой ORM. Создав собственную ORM (для удовольствия, не делайте этого по-настоящему), вы действительно поймете, что происходит.

Linq (я не говорю о LinqToSql) - отличная технология, и вы можете Если вы не используете Linq с ADO.NET, вам нужно что-то вроде ORM.

По многим причинам (Linq - одна из наиболее сильных сторон, зрелость ORM - другая), сейчас прекрасное время для перехода от ADO.NET к ORM.

Из того, что я видел, «обновить» проект с одного ORM до другого (неважно, какие ORM) всегда сложно, если вы действительно не знаете, что делаете, и не держите ORM как можно более слабо связанным со всем остальным.

Я бы опасался как LinqToSql, так и EntityFramework (также известного как LinqToEntities). Им обоим не хватает некоторых функций, которые вам, вероятно, понадобятся в «реальном мире». Ни один из них не является зрелым или проверенным (как показывают разногласия, которые вы видели в ответах на этот вопрос).

В пространстве .NET есть зрелые, проверенные ORM, и несложно определить, какой из них является доминирующим. сейчас.

0
ответ дан 18 December 2019 в 11:58
поделиться

Если ваше приложение будет запущено в производство до того, как станет доступен .net 4.0 SP1, перейдите на L2S. Linq-to-SQL стабильна, он не исчезнет в ближайшее время и генерирует отличный SQL. EF v1 - нет. Период. Посетите форум MSDN EF , если хотите узнать больше о детских болезнях EFv1.

Будет ли EFv2 соответствовать этой задаче, еще неизвестно; Я использовал только бета-версию 1, и в ней нет некоторых улучшений, которые, как говорят, есть в более поздних версиях.

Тема «L2S vs EF» уже затрагивалась много раз, проверьте:
Является ли LINQ to SQL Dead or Alive?

... и лично я думаю, что заявление Андерса Хейлсберга в Redmond Developer News проясняет это. « LINQ to SQL жив. Уверяю вас, он не умер. Ничто никогда не исчезнет. Мы никогда этого не делали и никогда не сделаем, », - сказал он.

http: // reddevnews.com/blogs/desmond-file/2008/12/digital-darwinism. aspx

4
ответ дан 18 December 2019 в 11:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: