This is somewhat similar to [this question][1] but more broad. In general, with ORMs like EF 4.1 supporting POCOs, does it now make sense to have your domain entities **be** the objects that are persisted to your database? With older ORMs like EF 4 or Linq-to-SQL, your "database objects" were auto-generated, and tightly coupled to your database, and so, for non-trivial applications, were mapped to more robust, intelligent domain entities before being put to work. Is the idea with newer ORMs to just build robust domain entities, and then have a data-layer that simply provides a mapping between said domain entities and your DBMS? In writing that I get the feeling that this has **always** been the goal, but not readily (easily) possible with the tools available, at least not in the .NET world. [1]: http://programmers.stackexchange.com/questions/62192/ddd-poco-does-this-makes-sense