title: Entity Framework in Layered Architectures
body: <p>Recently I've read article "<a href="http://msdn.microsoft.com/en-us/magazine/cc700340.aspx" rel="noreferrer">The Entity Framework In Layered Architecture</a>" and there is written we can send EF-entities to client through WCF. But in many threads on Stackoverflow people tell that POCO(DTO)-objects should be used when we use WCF. 
  And I have some questions.</p>
  
  <ol>
  <li><p>Why did Microsoft add DataContract attribute to EF-entities? Does Microsoft wanted us to use these objects everywhere in our applications? Or this is only for very simple applications and for rapid development?</p></li>
  <li><p>If I use POCO-objects, should I create auto generated EF-Entities, POCO-Entities and after that use any mapping library between them? Or I should use only POCO-objects in all components of my application?</p></li>
  <li><p>If I already have my own business entity, which has some methods, and it should be mapped to POCO object, on which layer should I convert POCO-object to my entity (for example, I have persistence layer, business logic layer, service layer(WCF), presenter layer (client, use WCF), UI layer)? Or I shouldn't make such my own entities?</p></li>
  </ol>
  
  <p>Thanks in advance</p>