(Tôi đang sử dụng ASP.Net MVC, nhưng điều này có vẻ giống như một câu hỏi MVC chung hơn)Trong Asp.net MVC, có nên sử dụng chế độ xem để lấy được từ các mô hình miền không?
Giả sử bạn có mô hình miền đại diện cho một người và bạn có chế độ xem để chỉnh sửa một người. Bao gồm trong đối tượng miền Person là thuộc tính State of Residence, và trong khung nhìn bạn muốn một danh sách thả xuống liệt kê các trạng thái.
Có lý do gì để không tạo mô hình chế độ xem có nguồn gốc từ mô hình miền và chỉ đơn giản là bao gồm các thuộc tính cho giao diện người dùng mà chế độ xem yêu cầu không? Nếu vậy, tại sao không muốn làm điều này?
TIA
"mô hình miền sẽ giới thiệu khớp nối mà MVC được dự định để tránh" Tuyên bố này không đúng. Triển khai Django/RoR trong đó các mô hình chế độ xem thực sự là các biểu diễn kết hợp chặt chẽ của lược đồ cơ sở dữ liệu. MVC không đưa ra ý kiến về mô hình của bạn, chỉ là nó không thuộc V và C. – jfar
Từ Wikipedia: Nhiều ứng dụng sử dụng cơ chế lưu trữ liên tục như cơ sở dữ liệu để lưu trữ dữ liệu. MVC không đề cập cụ thể đến lớp truy cập dữ liệu vì nó được hiểu là bên dưới hoặc được đóng gói bởi mô hình. Mô hình không phải là đối tượng truy cập dữ liệu; tuy nhiên, trong các ứng dụng rất đơn giản có ít logic miền thì không có sự phân biệt thực sự nào. Active Record là một mẫu thiết kế được chấp nhận hợp nhất mã miền và mã truy cập dữ liệu - một mô hình biết cách tự bảo vệ. – jfar
@jfar: Điểm của bạn được thực hiện tốt; tuy nhiên, nhiều ví dụ của MVC sử dụng LINQ-to-SQL hoặc LINQ-to-Entities hoặc DataSets * làm * mô hình miền. Tất cả các mô hình này có ít nhất một số khớp nối với cơ chế lưu trữ liên tục, và được sử dụng làm mô hình (thường là đủ) trong thực tế. – kbrimington