В чем основное преимущество наличия чистых моделей POCO? Я понимаю, что Модели должны быть чистыми и простыми, но я склонен поддерживать содержание дочерних объектов в классах моделей. Например, если у меня есть ClassA
и ClassB
определяется следующим образом:
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; }
}
Есть ли что-то не так с методами добавления и удаления? Должен ли я вместо этого просто выставить список и позволить клиентскому коду добавить все, что передает ответственность простых проверок данных, таких как not null, и не дублировать другой класс?
Любая помощь приветствуется. Спасибо.
AddChild(ClassB newChild) => Children.Add(newChild ?? new NullClassB())