Một trong những ứng dụng kế thừa của chúng tôi đang chạy trong VB.net (3 tầng) và DataTable được sử dụng làm DTO. Nhưng chúng tôi muốn chuyển đổi ứng dụng bằng cách sử dụng kiến trúc WPF, MVVM. Tôi có thể thực hiện MVVM bằng cách sử dụng Datatable như DTO hoặc tôi có để tạo ra các lớp học để đại diện cho các datatable và thực hiện kiến trúc MVVM. ?MVVM bằng DataTable?
Trả lời
Không có gì trong MVVM ngăn cản việc sử dụng DataTable/DataSet làm mô hình của bạn. 'M' trong MVVM có thể là bất cứ điều gì thực sự. Đó là V và VM được xác định rõ ràng hơn. Chỉ cần có hành động ViewModel của bạn như là đi-giữa cho View của bạn và DataRow cơ bản. Nó không phải là bất kỳ phức tạp hơn nếu mô hình của bạn đã được tạo ra các lớp dịch vụ web.
Xem xét sự khác biệt giữa việc sử dụng mô hình thiếu máu so với mô hình đa phương tiện trong MVVM. Trong mô hình thiếu máu; đó là những gì bạn nhận được với một datatable, bạn thực hiện các thuộc tính và hook up tất cả các sự kiện INotify trong VM của bạn. Nếu bạn đi các tuyến đường mô hình phong phú như xây dựng bạn sở hữu các đối tượng kinh doanh hoặc sử dụng một khuôn khổ như CSLA, sau đó bạn nhận được rất nhiều hành động từ mô hình của bạn và VM của bạn nhỏ hơn/đơn giản hơn nhiều.
- 1. Cách trả về một Datatable bằng [WebMethod]
- 2. Lệnh liên kết trong WPF bằng MVVM
- 3. Giàn giáo cho WPF bằng MVVM?
- 4. Nhóm WPF bằng Bộ sưu tập bằng MVVM
- 5. C#: Lấy giá trị từ DataTable bằng PrimaryKey
- 6. Chuyển đổi DataTable sang JSON bằng khóa trên mỗi dòng
- 7. Dapper to DataTable
- 8. Để MVVM hay không để MVVM đó là câu hỏi
- 9. Datatable vs Dataset
- 10. LINQ Chọn Từ DataTable
- 11. Cách triển khai thanh tiến trình bằng mẫu MVVM
- 12. Các mục đã chọn bằng MVVM trong WinRT
- 13. Kích hoạt hoạt ảnh từ một sự kiện bằng MVVM
- 14. Sự kiện đã thay đổi lựa chọn bằng MVVM
- 15. Điều hướng Silverlight bằng Mvvm-light (oobe) + MEF?
- 16. DataTemplate + MVVM
- 17. MVVM DataBinding
- 18. MVVM chuẩn
- 19. Làm cách nào để gắn một thuộc tính vào hộp văn bản bằng bộ công cụ MVVM và MVVM?
- 20. Mô hình MVVM
- 21. DataTable như DataGrid.ItemsSource
- 22. jQuery DataTable checkall
- 23. Datatable Select() Phương thức
- 24. LINQ to DataTable
- 25. System.Data.DuplicateNameException trong DataTable
- 26. Từ datatable đến Entity
- 27. Entity lớp DataTable
- 28. MVVM - Xác thực
- 29. Học WPF và MVVM
- 30. MVVM: Truyền thông
k, thnx. Trong lớp chúng ta có thể thực hiện INotifyPropertychanged và thậm chí chúng ta có thể viết các cuộc gọi trở lại, co giật vv Nhưng trong Datatable hoặc trong DataRow làm thế nào chúng ta có thể xác định các thông báo thay đổi? Đó là những gì khiến tôi hỏi câu hỏi này –
DataTable có một sự kiện RowChanged mà bạn có thể sử dụng. Nhưng có thể bạn không cần sử dụng nó. ViewModel có thể tăng các sự kiện PropertyChanged theo yêu cầu. DataRow không nên thay đổi bên dưới ViewModel quá nhiều nếu ViewModel đang kiểm soát dữ liệu đi vào và ra khỏi DataRow. – Josh