Вопрос

Использовали ли вы OpenAccess ORM от Telerik ? Как это по сравнению с NHibernate? Когда я должен рассмотреть возможность использования его через NHibernate?

Это было полезно?

Решение

Мне самому интересно то же самое. С одной стороны, есть NH с его бесплатным открытым исходным кодом, но с ограниченными возможностями поддержки. С другой стороны, довольно новое дополнение к хорошо известному поставщику инструментов, OA.

ОА стоит денег, но вы получаете поддержку. NH свободен, но поддержка, по крайней мере в моем кратком опыте, была известна как ограниченная и медленная.

Я думаю, что оба, вероятно, хорошие продукты. Я решил попробовать О.А., так как я уже пользуюсь инструментами Telerik. О.А. и его поддержка оплачиваются в любом случае.

NH использует простые классы и объекты без каких-либо украшений для свойств классов. Для OA требуются украшения (красиво сгенерированные графическим интерфейсом OA Visual Studio).

NH требует "сеанса" в котором сделать единицу работы с базой данных; OA называет это «областью действия». Оба используют «транзакцию».

OA имеет интеграцию с Visual Studio и может выполнять прямое и обратное сопоставление с базой данных и из нее. Прямое сопоставление позволяет создавать классы, а затем нажимать " те в базу данных для настойчивости. & Quot; обратный " для вас "модель домена" разработчики, что я предпочитаю.

ОА определенно претерпевает некоторые важные обновления, так как Telerik проигрывает "наверстать упущенное" за недавнее приобретение и выпуск OpenAccess, ранее принадлежавшего Vanatec (из Германии).

Что касается "простоты использования" и «производительность / масштабируемость»; точка зрения, я хотел бы знать, где каждый стоял. Я уверен, что кто-то мог бы провести честное испытание между ними и сделать эти определения.

Одна вещь, которая мне нравится в NH, - это доступные шаблоны для генерации необходимого кода, а не только для " тупой " бизнес-объекты (которые все OA генерирует сейчас), но для BLL и DLL. После долгих разговоров с Telerik у меня сложилось впечатление, что они планируют больше вариантов генерации кода, поэтому OA более полезен из коробки.

Надеюсь, это поможет! Кто-то, пожалуйста, попробуйте получить статистику по вопросам производительности.

Другие советы

Я не использовал его, но одно очевидное для меня преимущество - это OpenAccess, поддерживаемый Telerik, в то время как nHibernate поддерживается сообществом. В зависимости от вашей компании это может стать решающим фактором, если вы готовы принять решения с открытым исходным кодом без гарантии поддержки.

Изменить

Кстати, я большой сторонник nHibernate и вообще открытого кода. Я использую nHibernate в течение последних шести месяцев, используя его для всей новой работы в нашем веб-приложении. Для моей нынешней компании это хорошо (стартапы любят бесплатно).

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

Лично я обнаружил, что поддержка nHibernate на одном уровне и даже лучше с некоторыми коммерческими поставщиками.

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

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

Я бы сказал, что nHibernate бесплатен, а OpenAccess стоит 399 долларов. Хотя CodeSmith с шаблонами nHibernate стоит $ 99- 399, если вы хотите, чтобы nHibernate легко автоматизировался. Похоже, что OpenAccess обладает большей прозрачностью на уровне данных и, вероятно, его легче поддерживать. Но если бы вы использовали что-то вроде Spring.Net, вы бы не только nHibernate автоматизировали данные, но и уровень сервиса автоматизирован. Хотя примите это с некоторой долей соли, потому что nHibernate и Spring.Net - еще одна партия файлов конфигурации, которые необходимо поддерживать. Бьюсь об заклад, OpenAccess дружественный графический интерфейс. Любой из них работает, но на nHibernate есть намного больше информации.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top