Я бы точно не рекомендовал Enterprise Library.Как следует из названия, большинство подпроектов очень "корпоративные", что подразумевает, что они в основном чрезмерно спроектированы и требуют большой конфигурации XML.Если вы не находите привлекательным, есть гораздо лучшие предложения.
Имея некоторый опыт работы с собственным ORM, а также с использованием множества различных фреймворков, я теперь в основном остановился на использовании EF4 (Entity Framework) в качествеон встроен и, следовательно, легко доступен даже в магазинах, которые настороженно относятся к открытым исходным кодам или даже к коммерческим сторонним компонентам.
Если вы работаете с существующей базой данных, EF предоставляет способ создания начальной модели сущностей.из этой базы данных, которую вы можете впоследствии изменить и синхронизировать в визуальном конструкторе.Если у вас нет базы данных, или вы не любите дизайнеров и предпочитаете работать с кодом, Microsoft предоставила загрузку CTP, которая позволяет работать с EF «первым кодом», где отображения базы данных выражаются в коде.Впоследствии вы можете сгенерировать базу данных, используя определенные классы.
Если вы открыты для использования с открытым исходным кодом, NHibernate является отличным и зрелым вариантом с хорошей поддержкой сторонних разработчиков (дизайнеров визуальных карт, профилировщиков и т. Д.).
Я почти забыл упомянуть, что ни при каких обстоятельствах вы не должны использовать свою собственную структуру доступа к базе данных.Потратьте свое время на написание «ЧТО» для вашего приложения, а не на «КАК», учитывая множество вариантов, доступных для этой конкретной функции.