2010-04-24 2 views
3

Ну, я новичок в этом материале ORM. Мы должны создать большой проект. Я читал о LINQ to SQL. будет ли целесообразно использовать его в проекте с высоким уровнем риска. я не обнаружил никаких проблем с ним лично, но дело в том, что когда-нибудь не будет возвращаться. Так что мне нужна обратная связь от гуру ORM здесь, в MSDN. Будет ли структура сущностей лучше? (Я сомневаюсь в LINK для SQL, потому что я читал и слышал отрицательную обратную связь здесь и там)Использование LINQ to SQL в проекте ASP.NET MVC2

Я буду использовать MVC2 в качестве рамки. Поэтому, пожалуйста, дайте отзыв о LINQ to SQL в этом отношении.

Q2) Также я являюсь поклонником хранимой процедуры, поскольку они предварительно вычислены и закреплены, и я никогда не работал без них. Я знаю, что LINQ to SQL поддерживает хранимые процедуры, но будет ли возможно отказаться от хранимой процедуры видя прекрасный слой доступа к данным, созданный с минимальными усилиями, поскольку нам также необходимо быстрое развитие.

Q3) Если некоторые изменения в некоторых полях, требуемых в базе данных в LINK to SQL, как изменения будут размещены на уровне доступа к данным.

+0

См. Мой ответ здесь: http://stackoverflow.com/questions/2701952/dump-linq-to-sql-now-that-entity-framework-4-0-has-been-released/2702016#2702016 - - это почти тот же вопрос, и мой ответ также применим здесь. –

ответ

2

Что касается Linq-to-Sql vs Entity Framework, я настоятельно рекомендую использовать Entity Framework. С выпуском .NET 4.0 и VS2010 Microsoft добавила soooo много хорошего в Entity Framework (EF) 4.0. Позвольте мне упомянуть несколько моментов: поддержка POCO и NTier (это означает, что вы можете иметь отдельную библиотеку с вашими простыми классами сущностей, и, конечно же, EF все равно будет знать о них), Lazy Loading, оптимизация запросов Sql ... Также вы может позволить EF генерировать ваши сущности (и у вас есть возможность изменить шаблон генерации T4), или вы можете создать их вручную, если вам нужно больше контроля. Кроме того, если приложение действительно будет большим, с EF 4, теперь вы можете легко отделить свои слои (вы можете создать свои тесты Mocks для тестирования и т. Д.). Я не веб-разработчик, поэтому я не могу дать вам никаких намеков на mvc2 по этому вопросу. q2-q3) - в EF у вас могут быть предварительно скомпилированные запросы - если вы позже наблюдаете за этим результатом, это не совсем то, что вам нужно. Это ускорит работу совсем немного. Если вы планируете использовать EF, и если вы добавите несколько измененных в базу данных, вы можете легко обновить свою модель щелчком. Я знаю, что я слишком много болтал над EF, а не Linq, чтобы sql :), но эй ... Я считаю, что это лучше подходит для ваших потребностей, и вы обязательно должны проверить это для этого проекта. Кроме того, я не знаю, как Microsoft добавит функции/инвестировать в LinqToSql в будущем.

Приветствия,

+1

EF4 по-прежнему представляет собой двухслойный подход, который наносит немного больше накладных расходов, чем Linq-to-SQL. Для простых сценариев только с SQL Server я бы все же использовал Linq-to-SQL. Для корпоративных приложений и более сложных сценариев перейдите к EF4. –

0

OK скомпилированные запросы, которые, конечно, догоняет мое внимание.

+0

Могу ли я спросить вас, зачем вы сделали 2 регистрации? – abatishchev

Смежные вопросы