(DDDのように)エンティティクラスとして機能するクラスがあります。基本的には次のようになります。
public class Page
{
protected String Name;
protected String Description;
protected Dictionary<int, IField> Fields = new Dictionary<int, IField>();
protected Page SetName(String name)
{
this.Name = name;
return this;
}
protected Page SetDescription(String description)
{
this.Description = description;
return this;
}
public Page AddField(IField field)
{
this.Fields.add(xxx, Field); //xxx = just some id
return this;
}
}
今私の質問は、これは有効なエンティティクラスですか?
メソッドの連鎖を維持する必要があるので、それについてはあまり詳しく説明しないでください(間違っていると思われる場合でも)。
私の主な関心事は、エンティティクラスにゲッターやセッターなどのメソッドを含めることができるかどうかです。そして特にAddField
?のような方法
このAddField
メソッドは、タイプが。のオブジェクトを受け取りますIField
。Page
それをクラス内の辞書に保存します。それは骨材ですよね?
それはエンティティの状態を変更し、それを実際のエンティティクラスにしませんか?
それとも、それはそれがそうであるようにちょうどいいですか?