Il Code Architects platform supporta l’uso del Repository Pattern.
Una volta definito il modello di un’entità di dominio, è possibile dotarlo automaticamente di un repository utilizzando la proprietà useRepository
:
entities:
...
- name: Product
...
useRepository: true
...
...
Questo flag imposterà la creazione di un repository per l’entità Product
che implementa il Generic Repository Pattern. In particolare, verrà generata un’interfaccia che estende l’interfaccia generica IRepository<TEntity, TKey>
:
public interface IProductRepository : IRepository<Product, Guid>
{
}
Verrà anche generata una classe che estende la classe generica Repository<TEntity, TKey>
e che implementa l’interfaccia generata:
public interface ProductRepository : Repository<Product, Guid>, IProductRepository
{
}
Il repository conterrà le query e i comandi per recuperare o modificare le entità. Per farlo, è sufficiente definire i metodi nell’interfaccia ed implementarli nel repository concreto.