Business Object là gì

ASP.NET MVC Entities, DTO, Business object, ViewModels? Làm thế nào để tôi quản lý điều này?

Trần Hồng Xuân · Trần Hồng Xuân 06:06 28/05/2014
7 giờ trước

Tôi rất bận rộn với kiến ​​trúc của một ứng dụng MVC mới, nhưng tôi đang rất bối rối về cách quản lý các loại đối tượng khác nhau. Sự nhầm lẫn là về mối quan hệ giữa các thực thể, đối tượng kinh doanh và mô hình xem. Tôi sẽ mô tả sự nhầm lẫn của mình bằng một ví dụ:

Tôi đã thiết lập ứng dụng web của mình với các dự án khác nhau: giao diện người dùng MVC, BLL, DAL, Những thứ phổ biến, v.v.

Giả sử tôi có một cái nhìn với Danh sách xe đạp. Tôi muốn hiển thị các chi tiết xe đạp như màu sắc, kích thước, nhà sản xuất. Nhưng trong cơ sở dữ liệu của tôi, Bike và Manufacturer là hai bảng khác nhau, vì vậy trong ngữ cảnh Entity Framework của tôi, đây cũng là hai lớp khác nhau.

Vì vậy, tôi có hai thực thể Xe đạp và Nhà sản xuất. Nhưng trong nhu cầu kinh doanh của tôi, tôi nghĩ chúng cần phải là một đối tượng duy nhất, mà tôi có thể thao tác hoặc sử dụng trong logic kinh doanh. Sau đó là chế độ xem của tôi, cần một Mô hình [Chế độ xem]. Đó cũng phải là một ViewModel kết hợp với các thuộc tính từ các bảng khác nhau.

Làm thế nào để tôi xử lý điều này? Tôi có cần lấy đối tượng Bike and Manufacturer từ DAL của mình và tạo một đối tượng kinh doanh từ nó trong BLL của mình và sau khi thực hiện một số logic nghiệp vụ, tôi có nên tạo ViewModel từ nó trong bộ điều khiển của mình không? Hay DAL của tôi cần trả lại một đối tượng kinh doanh kết hợp? Hoặc tôi có thể sử dụng đối tượng thực thể như các lớp nghiệp vụ không? Hoặc tôi cũng có thể sử dụng đối tượng kinh doanh của mình dưới dạng ViewModel?

Tôi hy vọng rằng vấn đề của tôi đã rõ ràng và bất kỳ ai cũng có thể cho tôi lời khuyên bổ ích về đối tượng nào là cần thiết và làm thế nào, ở đâu và khi nào các loại đối tượng khác nhau được tạo, và lớp này sẽ đi vào lớp nào ...

  • c#
  • asp.net mvc
  • entity framework
  • architecture
9 hữu ích 3 bình luận 6.3k xem chia sẻ

Video liên quan

Chủ Đề