Olá José,
Ao longo dos últimos anos tenho trabalhado com uma framework própria de persistência e que satisfazia os seguintes requisitos:
- Cache sobre os dados, quer com algoritmos de dependência do motor (tipo sqldependency), quer motores custom de dependências
- Suporte a multi-bds e transacções distribuídas
- Independência da bd usada, com modelo de plugins. Isto permitia por exemplo migrar uma entidade de motor, sem ter que regerar código
- Relação de 1:1 com tabelas ou views
- Agregação de entidades, possibilitando a criação de entidades lógicas diferentes das físicas
Nos ultimos meses não tenho necessitado deste tipo de frameworks porque tenho estado envolvido em projectos bem diferentes. No entanto, com a tecnologia que existe hoje, optaria radicalmente por LINQ e Entity Framework. Bem sei que ainda faltam algumas coisas, mas com alguns ajustes ia lá... A grande vantagem é sem dúvida a abrangência destas duas frameworks e a grande suportabilidade e adopção que concerteza irão ter.
os meus 0,02€
cpmts