Надоел мне, так называемый raw SQL на работе, и воодушевившийся django я подумал, а нет ли ORM для C# .NET 2.0 (тем более, что в NET 3.5 и студии 2008 уже заложена пооддержка ORM в виде LINQ (хотя, как я понял - это не совсем ORM, а скорее аналог HQL). Оказалось есть и не одна.
Так как я приверженец os, поэтому неудивительно, что мой выбор пал на NHibernate.
NHibernate — ORM-решение для платформы Microsoft .NET портированное с Java. Это бесплатная библиотека с открытым кодом, распространяется под лицензией GNU Lesser General Public License.
NHibernate позволяет отображать объекты бизнес-логики на реляционную базу данных. По заданному XML-описанию сущностей и связей NHibernate автоматически создает SQL-запросы для загрузки и сохранения объектов.
NHibernate является портом на .NET популярной на платформе Java библиотеки Hibernate. Версия 1.0 покрывает набор возможностей Hibernate 2.1, а также часть возможностей Hibernate 3. NHibernate 1.2.1, выпущенная в ноябре 2007 года, предоставляет ещё больше возможностей из Hibernate 3, поддерживает .NET 2.0, хранимые процедуры, generics и nullable типы. NHibernate 2.0.1, выпущенная в конце сентября 2008 года предоставляет бо́льшую часть возможностей Hibernate 3.
Поддерживаемые СУБД
* Microsoft SQL Server
* Oracle
* Microsoft Access
* Firebird
* PostgreSQL
* DB2 UDB
* MySQL
* SQLite
http://ru.wikipedia.org/wiki/NHibernate
Чтобы быстро начать с ним работать, рекомендую просмотреть следущие скринкасты:
Summer of nhibernateЧерез день вы сможете уже писать приложения, используя NHibernate, что в дальнейшем сэкономит вам уйму времени (написать один класс для таблицы и все - использовать эти классы в любой программе).
В общем, рекомендую посмотреть, а потом решить, подходить ли данное решение для Вас.
ps. приверженцы Djanjo оценят, я уверен =)
pps. Да, с Днем Знаний всех! Помните, учиться никогда не поздно! ;)
укапывп