У меня есть опыт работы с 3 слоями ORM:
Все три бесплатны, поддерживают соединения OleDb и хранимые процедуры.
Дозвуковой - этот был создан специально для веб-приложений. Это имитирует многое из того, что делает Ruby On Rails. Они просто добавили миграции. Дозвуковой является самым легким из трех. Это немного сложнее использовать для Winforms, но не так сложно, как я ожидал. Он поставляется с хорошим инструментом пользовательского интерфейса для генерации кода и поддержания настроек базы данных. Это единственный, который поддерживает различные базы данных. Я использовал его с SQLite, SQL Server CE и SQL Server.
CSLA.NET - этот в значительной степени может справиться практически со всеми новыми и изящными технологиями .NET. Я знаю, что автор только что добавил поддержку WCF, WPF и Silverlight. Это то, что я использую, когда мне нужно очень тяжело работать с приложениями корпоративного типа. Он имеет множество приятных функций, таких как неограниченное удаление объектов, возможность помечать коллекции как доступные только для чтения, а также возможность перемещать и привязывать объекты в любом месте, где вы хотите. Это самое близкое к тому, что JBoss делает на Java.
Net Tiers - я не большой поклонник, но он выполнит свою работу. Это легче, чем CSLA, но все же тяжелее, чем Subsonic.
Я бы также упомянул NHibernate , Castle Active Record и Microsoft Enterprise Library . У меня нет особого опыта в этом деле.