NET Domain-Driven Design with C#P roblem – Design – Solution phần 9

Cụ thể, tất cả các thuộc tính tạo nên giao diện ITransmittal mà tôi giới thiệu trong chương cuối cùng. Thay vào đó có tất cả các lớp này thực hiện các giao diện ITransmittal và có tất cả các mã trùng lặp đó, tôi quyết định để cấu trúc lại các mã thông thường vào một | Chapter 9 Construction Change Directives protected void SaveCommandHandler object sender EventArgs e if sender e It begins by validating the CurrentEntity via the ValidateCurrentObject method. If that validation passes it then calls another abstract method SaveCurrentEntity in order to save the Entity. protected abstract void SaveCurrentEntity object sender EventArgs e Again I am delegating down to the derived class here to figure out what it needs to do to save the Entity. The last thing the method does is to change the state of CurrentEntity to that of Existing. The Newly Refactored TransmittalViewModel Class The signature of this class has changed a little bit here is what it looks like now using System using using using using using using using using using namespace public abstract class TransmittalViewModel T EditableViewModel T where T EntityBase ITransmittal Instead of inheriting from the ViewModel class it now inherits from the EditableViewModel T class. The Constructor and Private Fields The number of private fields and the amount of code in the constructor have been significantly reduced region Private Fields private IList SpecificationSection specificationSections private IList ItemStatus itemStatuses private BindingList MutableCopyTo mutableCopyToList private CollectionView deliveryMethods private IList Discipline disciplines continued 321 Chapter 9 Construction Change Directives continued private Delegatecommand deleteCopyToCommand endregion region Constructors public TransmittalViewModel this null public TransmittalViewModel IView view base view .

Không thể tạo bản xem trước, hãy bấm tải xuống
TÀI LIỆU MỚI ĐĂNG
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.