Rod Johnson, founder of Spring framework, made great presentation on persistence strategies. He suggests to use O/R mapping framework in 90% of cases and layering/interfaces/Spring to separate persistence and domain model. I wonder when good IoC frameworks with persistence integration support will appear in .NET world. Spring.NET does not provide anything useful, Castle provides NHibermate