我对如何使用 DDD 更新相关实体感到困惑。假设我有一个员工类和工作计划类。我应该如何更新某个员工的具体工作时间表?Employee 和 Workschedule 之间的关系是一对多的。下面是我使用的如何添加/更新某个工作计划的代码。
public class Employee
{
public int EmployeeId { get; set; }
public virtual ICollection<WorkSchedule> WorkSchedules { get; set; }
public WorkSchedule AddWorkSchedule(WorkSchedule workSchedule)
{
this.WorkSchedules.Add(workSchedule);
return workSchedule;
}
public WorkSchedule EditWorkSchedule(WorkSchedule workSchedule)
{
var originalWorkSchedule = this.WorkSchedules.FirstOrDefault(w => w.WorkscheduleId == workSchedule.WorkscheduleId);
originalWorkSchedule.ClockIn = workSchedule.ClockIn;
originalWorkSchedule.ClockOut = workSchedule.ClockOut;
return originalWorkSchedule;
}
}
public class WorkSchedule
{
public int WorkScheduleId { get; set; }
public DateTime ClockIn { get; set; }
public DateTime ClockOut { get; set; }
public int EmployeeId { get; set; }
}
这个对吗?我是否正确遵循 DDD?另外,我现在的想法 Workschedule 是一个值对象,但我将 ID 用于规范化目的