andrebaltieri / Flunt

Validations and Notifications
https://github.com/andrebaltieri/flunt
MIT License
624 stars 162 forks source link

Propriedades de Notifiable<T> como 'virtual' #111

Closed brailowsky closed 4 months ago

brailowsky commented 1 year ago

Ao serializar (System.Text.Json) objetos implementando Notifiable, eu recebo também as propriedades IsValid e Notifications. Em alguns casos o destino do Json não pode implementar Flunt/Notification, ou seja esses dados extras não serão utlizados - além do maior payload.

Sugestao: Marcar ambas as propriedades como virtual: nao ira afetar implementacoes existentes, a classes que implementem Notifiable poderão, como no meu caso, realizar um override e decorar as propriedades com [JsonIgnore].

saldorflorin commented 4 months ago

Olá, gostaria de saber se essa ação já foi implementada? Pois tem um retorno de uma payload muito feia com os values objects retornando em cada um um metodo "Notifications:[]"

andrebaltieri commented 4 months ago

Bom dia, pessoal, as propriedades do Flunt não podem ser afetadas por comportamentos individuais, ou seja, se eu colocar o Ignore no IsValid eu vou mudar este comportamento para todos que usam o Flunt...

Além disso, o JsonIgnore veio junto com .NET 6+, precisando aumentar a versão da lib e diminuindo a quantidade. Podemos discutir isto para as próximas versões com Breaking Changes!