来自Los Techies的Jimmy Bogard says that he maps his EditModel to Command Messages而不是将EditModel映射到DomainModel。谁能进一步解释这个?
答案 0 :(得分:4)
我猜它是command pattern的一个版本,它根据提供的消息对相关域对象执行必要的操作。例如像
这样的东西public PromoteEmployeeCommand : ICommand {
private readonly PromotionMessage _message;
private readonly IEmployeeRepository _repository;
public PromoteEmployeeCommand(PromotionMessage message,
IEmployeeRepository repository) {
_message = message;
_repository = repository;
}
public void Execute() {
/* Get the employee, give them a rise etc... */
}
}
编辑模型的映射将解析为可以根据需要调用的许多命令消息(例如,让员工上升,通知他们的经理,添加工资单注释等)。
这种方法的优势在于它可以将您的域模型与编辑模型所暴露的任何表现性问题隔离开来。