Какие преимущества дает сопряжение разработки .Net с SQLServer с точки зрения ORM? - PullRequest
3 голосов
/ 02 июля 2010

В Java Hibernate является королем в плане автоматизации синхронизации кода / БД.И я знаю, что NHibernate является эквивалентом .NET, и что LINQ имеет несколько классных функций SQL (несмотря на то, что он не разрабатывается в дальнейшем IIRC).

Но , есть ли какое-то преимущество от спаривания.Чистая разработка с базой данных SQLServer?Магия автоматического сохранения предметов, возможно?Или в эти дни ваше соотношение язык / БД мало что меняет?

Ответы [ 4 ]

2 голосов
/ 02 июля 2010

Поскольку слой данных должен абстрагировать выбранную вами БД, любые преднамеренные встроенные преимущества увеличат связность и уничтожат цель абстракции.

2 голосов
/ 02 июля 2010

Простое сопряжение .NET с SQL ничего не даст вам по сравнению с хорошим ORM.

Единственная возможная причина использовать их вместе - это то, что оба исходят от одного поставщика и, безусловно, будут хорошо взаимодействовать..

Вот почему появился Linq2Sql, а не после того, как NHibernate (Hibernate для .NET) существовал годами.

1 голос
/ 02 июля 2010

Я бы сказал, попробуйте и используйте то, что вы знаете, если это SQL Server пойти с этим.Вы не получаете бесплатное волшебное автоматическое сохранение объектов с сервером .net + sql, вам придется комбинировать его с чем-то другим.Большим преимуществом сервера .net + sql является то, что он полностью совместим с MS, и есть огромное сообщество, к которому можно обратиться, если вам потребуется помощь (большинство других БД также имеют большие сообщества поддержки).

ORMфреймворки очень популярны, и есть множество их доступных для большинства баз данных.Мы используем LINQ2SQL, потому что он работает для нас.Другие разработчики, которых я знаю, используют EF, Subsonic и NHibernate.

Возможно, вы сможете воспроизвести / просмотреть несколько ORM и посмотреть, есть ли какие-либо из них, которые вы будете использовать или выделять из-за конфигурации, простоты использования, функций или чего-то еще, что вам нравится.

0 голосов
/ 02 июля 2010

Учитывая часть вопроса "с точки зрения ORM", единственное взаимодействие, которое я вижу между приложением .NET и SQL Server, заключается в использовании Linq to SQL. С Linq to SQL вы, по сути, получите лучшую интеграцию инструментов ORM в Visual Studio (дизайнер причудливых сущностей, пользовательские шаблоны ...) и, конечно, запросы Linq. Однако я не уверен, стоит ли это беспокоить, поскольку Linq to SQL, по-видимому, останется ограниченным по сравнению с большими решениями ORM.

Другие преимущества действительно специфичны и не имеют отношения к ORM, например, лучше подходят для хранимых процедур CLR, доступных с SQL Server 2005.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...