Qual é o principal benefício de ter modelos POCO puros? Entendo que os Modelos devem ser limpos e simples, mas eu gosto de manter a manutenção de objetos filho dentro das classes de modelo. Por exemplo, se eu tiver um ClassA
e ClassB
definido da seguinte forma:
public class ClassA
{
public string MyProp { get; set; }
public IEnumerable<ClassB> Children { get; }
public void AddChild(ClassB newChild) { /*... */ }
public void RemoveChild(ClassB child) { /* ... */ }
}
public class ClassB
{
public string SomeProp { get; set; }
}
Existe algo inerentemente errado em ter os métodos de adição e remoção? Em vez disso, devo apenas expor a lista e permitir que o código do cliente adicione o que quer que seja que passe a responsabilidade de validações simples de dados, como não nulo, e não duplicar para outra classe?
Qualquer ajuda é apreciada, obrigado.
AddChild(ClassB newChild) => Children.Add(newChild ?? new NullClassB())