Khi phát triển giao diện của tôi (hợp đồng) và triển khai cụ thể của chúng, cả hai mô hình dữ liệu cũng như kho lưu trữ, tôi thấy mình đặt câu hỏi nơi logic hợp lệ nên đi. Một phần của tôi (có khuynh hướng thắng) nói rằng bản thân lớp phải chịu trách nhiệm cho việc xác nhận của chính nó (chuỗi dài, ngày đệm, vv), nhưng phần khác của tôi nói điều này nên được chuyển đến kho lưu trữ bởi vì khi lưu trữ lâu dài, các giá trị này có thể thay đổi dựa trên việc triển khai kho lưu trữ của bạn.Trường hợp logic hợp lệ nên được triển khai ở đâu?
Tôi nghĩ rằng có một số xác nhận phải được thực hiện ở cấp lớp và nghĩ rằng có lẽ nên được giữ lại với nhau và không thay đổi ngay cả khi kho lưu trữ, đó là lý do tại sao tôi có xu hướng giữ nó trong lớp.
Tôi là tất cả về việc đưa vào xác thực giao diện người dùng nhưng điều này là không bao giờ đủ vì có thể bỏ qua nhiều xác thực giao diện người dùng.
Tò mò những gì mọi người nghĩ và lý do đằng sau nó.
Không có gì nếu xuất phát từ cơ sở dữ liệu. Thay vào đó ngược lại nếu người ta định lái chiếc kia. Đừng dictate hành vi người dùng từ lược đồ cơ sở dữ liệu của bạn. Ngoài ra, bạn không muốn các bài kiểm tra đơn vị lớp của bạn phụ thuộc vào các kết nối cơ sở dữ liệu và các tạo phẩm. – dkretz