Какой ORM использовать с Azure SQL?

Просто задавшись вопросом, что everyones мысли, на какой ORM использовать для Azure SQL?

Я - довольно удобный LINQ-SQL использования, и я полагаю, что возможно получить его работающий с Azure SQL. Однако от моего понимания (исправляют меня, если я неправ), никакое дальнейшее совершенствование не будет сделано Linq-SQL в будущих выпусках платформы.NET?

С другой стороны, существует платформа объекта..., и далее далеко от дома от Microsoft Camp NHibernate.

Идеально, любые дополнительные сделанные предложения должны быть бесплатными или с открытым исходным кодом. Я видел ORM Telerik, но это, конечно, коммерческий продукт.

Я могу получить определения/преимущества каждого ORM сам путем выполнения поиска Google, но я просто интересовался мнениями народов, относительно которых ORM, кажется, работает лучше всего на них (даже если это не ни одно из вышеупомянутого),

20
задан Matt 19 April 2016 в 18:39
поделиться

6 ответов

В настоящее время мы используем NHibernate в Azure и находим его довольно хорошо .

Поскольку мы используем архитектуру s # arp , чтобы предоставить большую часть кода для NHibernate и Dependency Injection, нам удалось довольно быстро запустить проекты с хорошей прочной основой. Все сказано, что это было довольно безболезненно, но при первом запуске с NHibernate может возникнуть некоторая крутая кривая обучения.

Я не уверен, знаете ли вы о Fluent NHibnerate - http://fluentnhibernate.org - но это отличный инструмент, который автоматически отображает ваши бизнес-объекты в вашу базу данных. Конечно, его можно настроить под любое поведение, которое вам нужно.

5
ответ дан 30 November 2019 в 01:10
поделиться

DataObjects.Net поддерживает SQL Azure. Он доступен под GPL (но не под LGPL - т.е. если GPL для вас слишком строгий, вы должны приобрести коммерческую лицензию).

6
ответ дан 30 November 2019 в 01:10
поделиться

Проверьте NHibernate. Наверное, сейчас на высшем уровне.

В противном случае хорошим ресурсом всегда будет http://www.ormbattle.net/

1
ответ дан 30 November 2019 в 01:10
поделиться

Я использую Linq-to-SQL с моей базой данных SQL Azure. У меня есть простая однозначная модель между моими классами и таблицами базы данных, так что это простейшее решение и работает безупречно (за исключением нескольких сбоев SQL Azure).

Вопрос Entity Framework и LINQ to SQL ответит на этот вопрос за вас.

1
ответ дан 30 November 2019 в 01:10
поделиться

Я довольно успешно использовал Entity Framework 1.0 и уверен, что 4.0 будет даже лучше, особенно с его поддержкой POCO (так что вы с самого начала свободны от объектов, связанных с контекстом). В любой из версий поддержка LINQ действительно имеет огромное значение, как только вы освоите ее.

Но я бы сказал, что вы должны рассматривать любой ORM как просто вариант - если вы настроили свой уровень доступа к данным для использования шаблонов Unit of Work и Repository, а затем используйте свой любимый контейнер Inversion of Control для внедрения конкретной реализации, тогда вы получите немного больше работы по настройке, но гораздо больше свободы в долгосрочной перспективе. Кого действительно волнует, где находятся данные или как вы продвигаетесь через определенный уровень, важно то, что вы с ними делаете

, вот что я считаю ...

Тоби

1
ответ дан 30 November 2019 в 01:10
поделиться

Джейми,

Как и Тоби, я успешно использую EF. Очень рекомендую. Обратите внимание, что когда я публикую это, мне пришлось сгенерировать модель из локальной версии нашей схемы. Это не сделка по ставкам, но стоит упомянуть. Ожидайте, что это изменится в будущем.

Ян

1
ответ дан 30 November 2019 в 01:10
поделиться
Другие вопросы по тегам:

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