Open eglauko opened 9 months ago
Idéia para context
// classe base para contexto
public abstract class ContextBase<TData>
{
TData Data { get; }
}
// classe base para contexto com source generator,
// onde a herda deve ser partial e é gerado as propriedades automaticamente.
public abstract class ContextBase<TData, TEntity> : ContextBase<TData> { }
// serviço que processa o contexto
public interface IContextProcessor<TData, TContext>
{
Task<OperationResult<TContext>> ProccessAsync(TData data);
Task<OperationResult> ProccessAsync(TData data, TContext context);
}
Depois o contexto pode ser mapeado via smart mapper, onde automaticamente os dados de Data são mapeados intenamente. Poderá haver comandos para tratar TData com o TContext.
Como será o processor ainda é necessário definir.
É necessário repensar nos comandos.
Uma idéia era implementar o SmartMapper com contextos.
Seria bom mover para um repositório a parte ???
Idéias iniciais:
RoyalCode.Commands.Abstractions