Tôi nhận thấy rằng việc sử dụng các thành phần nhận biết dữ liệu dẫn đến ứng dụng không có sự phân biệt rõ ràng giữa logic kinh doanh và giao diện người dùng.
Điều này là tốt cho các dự án nhỏ nhưng khi chúng phát triển lớn hơn, mã ngày càng trở nên ít bảo trì hơn.
Tất cả các đoạn mã sự kiện khác nhau (và các tương tác của chúng) có thể trở thành một cơn ác mộng thực sự khó hiểu!
Luôn luôn trong những trường hợp như vậy, tôi đã bỏ qua các thành phần nhận biết dữ liệu và chuyển sang thiết kế MVC (được mã hóa thủ công).
Điều này đòi hỏi nhiều nỗ lực mã hóa trước nhưng kết quả (IMHO) trong một dự án có thể bảo trì, mở rộng và gỡ lỗi được.