В некотором смысле NHibernate кажется удобным, потому что он приводит к меньшему количеству ввода и затем propably меньшему количеству ошибок.
Трудно судить о том, что вы ищете, исходя из краткости вашего вопроса, поскольку в ответе на него действительно много нюансов.
Во многом, как говорят другие здесь, это зависит от вашего проекта и ваших знаний о nHibernate. Но это также зависит от множества других факторов...
Если вы думаете, что ваш маленький проект когда-нибудь перерастет в большой проект, это может стать лучшим аргументом в пользу этого, так как у вас будет прочный фундамент, на котором вы сможете развиваться.
Если ваша цель - изучение nHibernate (или другого ORM), то небольшой проект может быть лучшим местом для того, чтобы намочить ноги и попробовать его. (Также попробуйте Linq2SQL и другие ORM и выбирайте то, что вам больше всего подходит)
Лично я использую nHibernate для всех своих больших и малых проектов (где это возможно из-за других ограничений). Но я также работаю с ним уже некоторое время и имею хорошую базу кода, которую могу использовать повторно. Так что это влияет на временную составляющую ответа. nHibernate имеет довольно крутую кривую обучения, так что если вам нужно сделать что-то быстро, nHibernate может быть не оптимальным вариантом.
Надеюсь, это поможет, если вы можете уточнить свой вопрос и свои цели немного больше в вашем вопросе, это поможет остальным из нас получить некоторые лучшие отзывы и идеи, чтобы помочь вам.
Я согласен с Оливером, но хотел бы добавить предостережение о том, что им легко пользоваться только тогда, когда вы знаете, как (а это может занять некоторое время). Если вы не успели освоиться и нуждаетесь в простом приложении, NHib замедлит вас; в противном случае используйте его на чем-нибудь, что не является полностью тривиальным или выброшенным! Таким образом, ваше простое, но эффективное приложение имеет еще одну надежную инфраструктуру, поскольку оно масштабируется и адаптируется к изменениям требований.
HTH,
Беррил
Это зависит от того, что вы имеете в виду под малым, и насколько вы успешны с Hibernate. Я обнаружил, что дополнительные накладные расходы на настройку не сделают использование его хорошим вариантом для небольшого проекта лично. Я бы сказал то же самое и о других фреймворках, таких как Spring, они гораздо более полезны в более крупных проектах с большим количеством разработчиков.
Я думаю, что NHibernate можно использовать в приложениях любого размера, потому что им действительно легко пользоваться (особенно с FluentNHibernate), и вы выполняет для вас много работы, например генерирует запросы SQL , сопоставляет значения с объектами и так далее. Даже в типичных небольших приложениях вам нужно приложить большую часть усилий к уровню сохранения данных, так почему бы не позволить NHibernate сделать эту работу за вас?
С уважением,
Оливер Ханаппи
Это не так, если вы хорошо разбираетесь в NH, если у вас есть генератор моделей, если вы используете какую-то СУБД, отличную от SQL Server.
Я думаю, что если у вас есть БД на SQL-сервере, вы очень торопитесь, вы хорошо разбираетесь в LINQ, LINQ2SQL может быть хорошим выбором. Быстро и РАД.