Royal-Code / EnterprisePatterns

Enterprise patterns implementations
GNU Affero General Public License v3.0
1 stars 1 forks source link

OperationResult and ProblemDetails #54

Closed eglauko closed 1 year ago

eglauko commented 1 year ago

Incluir compatibilização entre OperationResult e ProblemDetails.

Poderá ser criado um novo projeto, RoyalCode.OperationResults.ProblemDetails, que converte os resultados para detalhes de problemas, e vice-versa.

Nos projetos que convertem para resultados do MinimalAPI e MVC, pode ter uma função (desacoplada) que gere ProblemDetails em vez de resultado operação como resposta.

Mudanças no OperationResult atual:

Além disso, deverá haver alguma forma de configurar os problemas.

Será necessário definir o código, título, status, para cada tipo de problema.

Também deverá ter uma configuração das opções base dos problemas, como Url base do type, onde o type será {UrlBase}/{Code}, UrlBase da instance, onde a instance será {UrlBase}/{Code}/{id}.

A instance deverá ser criada quando for informado o Id na hora de converter um ResultadoOperação para ProblemDetails.

Na configuração dos problemas, pode haver um campo para informar detalhes que descreve detalhes do problema, como esse problema pode ocorrer, e como pode ser contornado (se que é possível).

eglauko commented 1 year ago

Incluir propriedade HasErrors no resultado (bool HasErrors => !Success;)

eglauko commented 1 year ago

Revisitada em #64