ORM для .NET
тебе именно ORM нужен? У нас в паре новых небольших проектах LINQ to SQL используется, вроде нормальные отзовы от разработчиков, ну там пришлось заменить генератор классов (тот что генерит классы по схеме БД) на свой. Еще некоторые заморочки с использованием этих классов в качестве DTO для не веб клиента (хотя может и не совсем правильно использовать их в качестве DTO но тоже вроде все решаемо.
LINQ to SQL это не ORM, а ROM. Но зато он простой и не отягощен ни чем. Ну а для реализации логики в ООП есть достаточно приемов. LINQ to SQL решает задачу работы с базой данных, т.е. он предоставляет уже объекты, прикрутить логику к объектам в оперативной памяти — здесь уже все приемы ООП работают. Это мое, имхо. И это один из пяти рабочих вариантов, указанных в известной статье "Вьетнам компьютерной науки".
LINQ to SQL еще не все продумано, он немного сыроват. Но уж лучше бороться с этой сыростью, чем с NHibernate.
LINQ to SQL это не ORM, а ROM. Но зато он простой и не отягощен ни чем. Ну а для реализации логики в ООП есть достаточно приемов. LINQ to SQL решает задачу работы с базой данных, т.е. он предоставляет уже объекты, прикрутить логику к объектам в оперативной памяти — здесь уже все приемы ООП работают. Это мое, имхо. И это один из пяти рабочих вариантов, указанных в известной статье "Вьетнам компьютерной науки".
LINQ to SQL еще не все продумано, он немного сыроват. Но уж лучше бороться с этой сыростью, чем с NHibernate.
NHibernate, в целом успешно. Основная проблема - работа с большими массивами данных.
MSEFэто не для людей
LINQ to SQL это не ORMЯ не знаю, как можно жить без SchemaExport и SchemaUpdate. У меня проект на 6 месяцев. Я не могу писать свои генераторы, конвертеры и прочее.
SchemaExport и SchemaUpdateты про управление схемой базы? Если да, то у последней студии специально есть тип проекта для этого.
У нас генератор человек написал буквально за один день. Потом некоторые изменения вносились, но из 6 месяцев на это можно найти время. За основу взяли какой то генератор с codeplex.com.
ты про управление схемой базы? Если да, то у последней студии специально есть тип проекта для этого.С NHibernate мне можно просто поставить новую версию заказчику и обновить БД программно.
У нас генератор человек написал буквально за один день. Потом некоторые изменения вносились, но из 6 месяцев на это можно найти время. За основу взяли какой то генератор с codeplex.com.У нас буквально за один день никто его не напишет.
пришлось заменить генератор классов (тот что генерит классы по схеме БД) на свойТак, я невнимательно прочитал, что за генератор. У меня другая задача - генерировать схему из имеющихся объектов.
С NHibernate мне можно просто поставить новую версию заказчику и обновить БД программно.да, согласен, это пока майкрософт не продумала. В принципе тулза генерит инкриментальный скрипт. Но на сколько я слышал не все там гладко, у нас на этих проектах тот кто диплоит имеет доступ к продакшен базе
.У меня другая задача - генерировать схему из имеющихся объектов.Если с этим уже определились, то, да, LINQ to SQL вам не подходит. Он исповедует обратную идеологию — схема БД первична, классы генерятся по схеме БД.
Оставить комментарий
kokoc88
Кто какие ORM использовал в коммерческих проектах? Насколько успешно? Есть ли альтернативы NHibernate, кроме MSEF?