Tôi biết những lợi thế của việc sử dụng các thuộc tính trên các trường, như có thể cung cấp logic bổ sung khi được yêu cầu trong tương lai.Tại sao chúng ta không thể sử dụng các trường công khai để ràng buộc dữ liệu trong C#?
Nhưng tôi thực sự băn khoăn tại sao không thể sử dụng các trường công khai để ràng buộc dữ liệu hoặc thậm chí đối với các trình nối tiếp JSON như lớp JavaScriptSerializer.
Có lý do chính đáng nào để bỏ qua các trường công khai trong những trường hợp này không? Hay nó chỉ là một loại quy ước nào đó? Hoặc chỉ để buộc người dùng sử dụng các thuộc tính?
I * sẽ * nói rằng có một hạn chế kỹ thuật đối với chúng trong thứ gì đó như Winforms hoặc MVVM ràng buộc dữ liệu, vì cả hai đều dựa vào sự kiện kích hoạt khi giá trị thay đổi để cập nhật giao diện người dùng. Không thể thông báo như vậy với các trường. –