Qual è il principale vantaggio di avere modelli POCO puri? Ho capito che i modelli dovrebbero essere semplici e puliti, ma tendo a mantenere il mantenimento degli oggetti figlio all'interno delle classi dei modelli. Ad esempio se ho un ClassA
e ClassB
definito come segue:
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; }
}
C'è qualcosa di intrinsecamente sbagliato nell'avere i metodi di aggiunta e rimozione? Dovrei invece semplicemente esporre l'elenco e consentire al codice client di aggiungere tutto ciò che passa la responsabilità di semplici convalide dei dati come non null, e non duplicare su un'altra classe?
Qualsiasi aiuto è apprezzato. Grazie.
AddChild(ClassB newChild) => Children.Add(newChild ?? new NullClassB())