Estive lendo um artigo na MSDN Magazine chamado Flexible Data Access With LINQ To SQL And The Entity Framework, escrito pelo Anthony Sneed. O artigo aborda como expor entidades criadas pelos ORMs da Microsoft (LINQ To SQL e Entity Framework) através de serviços WCF.
O autor criou DTOs (que são baseados em POCO) semelhantes as entidades criadas pelo designer do ORM, fazendo um trabalho árduo que é o mapeamento entre os DTOs e as entidades geradas. Como o LINQ To SQL tem um suporte legal para mapeamento entre objetos POCOs e o banco de dados (via arquivos Xml), o Anthony mostra neste post como podemos fazer uso dos templates T4, criando classes em formato POCO ao invés de utilizar as próprias entidades geradas pelo LINQ To SQL.
Eu sinceramente acho uma "Gambi" ficar criando esses DTOs. Nunca tive estes problemas com NHibernate.
REST IN PEACE Linq to Sql, que venha o Entity Framework.