C#を使用してイベントソースを使用してCQRSの学習と作成を開始しました。私は多くのサンプルをチェックし、各サンプルでは、ドメインオブジェクトを構築する際に、必要なドメインフィールドはすべてコンストラクタを使って渡すか、静的メソッドを使ってドメインオブジェクトを作成します。C#DDD - ドメインオブジェクトの作成
トップレイヤーから取得している個々のフィールドの長いリストを渡す代わりに、完全なDTOをドメインオブジェクトに渡す必要がありますか?
public class Student : AggregateRoot
{
public int ID { get; set; }
public string Name { get; set; }
// Without ID and Name a domain object should not be created
//Can I write like this?
public Student(StudentDto studentDto)
{
ID = studentDto.ID;
Name = studentDto.Name;
}
//Can I write like this?
public Student(int id,string name)
{
ID = id;
Name = name;
}
}
'AggregateRoot'と' StudentDto'は何ですか? –
ドメインモデルはDTOのことを知ってはいけません。 –
AgfregateRootは私のすべての集約の基本クラスであり、StudentDtoは私のサービス層から他の層へのデータをpasaするための単なるクラスです..domanのモデルはdtosに関する知識を持っていてはいけないので、私の質問を解決します。完全なdtoの代わりに私が間違っている場合私を是正してください。 – Deb