Tôi đang tự hỏi làm thế nào tôi nên nhóm các kho lưu trữ của mình? Giống như từ các ví dụ tôi đã thấy trên asp.net mvc và trong sách của tôi về cơ bản, chúng sử dụng một kho lưu trữ cho mỗi bảng cơ sở dữ liệu. Nhưng điều đó có vẻ như có rất nhiều kho lưu trữ dẫn đến việc bạn phải gọi đến nhiều kho lưu trữ sau này để chế nhạo và các thứ.
Vì vậy, tôi đoán tôi nên nhóm chúng. Tuy nhiên tôi không chắc làm thế nào để nhóm chúng.
Ngay bây giờ tôi đã tạo một Kho lưu trữ đăng ký để xử lý tất cả các nội dung đăng ký của mình. Tuy nhiên, có 4 bảng tôi cần cập nhật và trước đó tôi đã có 3 kho để thực hiện việc này.
Ví dụ một trong các bảng là bảng cấp phép. Khi họ đăng ký, tôi nhìn vào khóa của họ và kiểm tra xem có tồn tại trong cơ sở dữ liệu hay không. Bây giờ điều gì sẽ xảy ra nếu tôi cần kiểm tra khóa cấp phép này hoặc thứ gì đó khác từ bảng đó tại một số điểm khác sau đó đăng ký?
Một điểm có thể là đăng nhập (kiểm tra xem khóa chưa hết hạn).
Vậy tôi sẽ làm gì trong tình huống này? Viết lại mã một lần nữa (ngắt DRY)? Cố gắng gộp 2 kho này lại với nhau và hy vọng rằng không có phương pháp nào là cần thiết trong một số thời điểm khác (chẳng hạn như tôi có thể có một phương pháp kiểm tra xem userName có được sử dụng hay không - có lẽ tôi sẽ cần nó ở một nơi khác).
Ngoài ra nếu tôi hợp nhất chúng với nhau, tôi sẽ cần 2 lớp dịch vụ vào cùng một kho lưu trữ vì tôi nghĩ rằng việc có tất cả logic cho 2 phần khác nhau của một trang web sẽ dài và tôi sẽ phải có các tên như ValidateLogin (), ValdiateRegistrationForm () , ValdiateLoginRetrievePassword () và v.v.
Hay gọi là Kho lưu trữ và chỉ có một cái tên nghe kỳ lạ xung quanh?
Có vẻ khó để tạo một kho lưu trữ có tên đủ chung để bạn có thể sử dụng nó cho nhiều vị trí trong ứng dụng của mình mà vẫn có ý nghĩa và tôi không nghĩ rằng việc gọi một kho lưu trữ khác trong một kho lưu trữ sẽ là một phương pháp hay?