วิธีแมป EditModel กับข้อความคำสั่ง

Jimmy Bogard ที่ Los Techies บอกว่าเขาแมป EditModel กับ Command Messages แทนที่จะแมป EditModel กับ DomainModel ใครสามารถอธิบายเพิ่มเติมเกี่ยวกับเรื่องนี้ได้บ้าง?


person Carl Hörberg    schedule 14.12.2009    source แหล่งที่มา


คำตอบ (1)


ฉันเดาว่ามันจะเป็นเวอร์ชันของรูปแบบคำสั่งที่ดำเนินการจัดการที่จำเป็นใน ออบเจ็กต์โดเมนที่เกี่ยวข้องตามข้อความที่ให้มา เช่น. สิ่งที่ต้องการ

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... */
     }
}

การแมปจากโมเดลแก้ไขจะแก้ไขเป็นข้อความคำสั่งจำนวนหนึ่งที่สามารถเรียกใช้ได้ตามต้องการ (เช่น เพิ่มเงินเดือนให้พนักงาน แจ้งผู้จัดการของพวกเขา เพิ่มบันทึกสำหรับบัญชีเงินเดือน ฯลฯ)

ข้อดีของแนวทางนี้คือสามารถแยกโมเดลโดเมนของคุณออกจากข้อกังวลในการนำเสนอใดๆ ที่แสดงโดยโมเดล Edit

person John Foster    schedule 14.12.2009