Trong khi tôi đồng ý về nguyên tắc với ý tưởng sắp xếp là Business Logic bởi vì bằng cách chia nhỏ nguồn gốc của nó, bạn sẽ kết thúc với một cái gì đó như "Khách hàng muốn trang Sản phẩm hiển thị với các hình ảnh được sắp xếp theo ngày" thì rõ ràng là thứ tự sắp xếp cho dữ liệu thường không tùy ý - ngay cả khi không có sự sắp xếp nào vì đó vẫn là một quyết định kinh doanh do thiếu sót (một danh sách trống vẫn là một danh sách).
NHƯNG ... Những câu trả lời này dường như không tính đến những tiến bộ trong công nghệ ORM, tôi chỉ có thể nói về mối quan hệ với Entity Framework (hãy tránh tranh luận về việc liệu đây có phải là ORM thật không, đó không phải là vấn đề) từ Microsoft như đó là những gì tôi sử dụng, nhưng tôi chắc chắn các ORM khác cung cấp chức năng tương tự.
Nếu tôi tạo chế độ xem được gõ mạnh cho lớp Sản phẩm bằng MS MVC và Entity Framework và có mối quan hệ khóa ngoài giữa bảng Sản phẩm và Hình ảnh (ví dụ: FK_ Productt_Image_ ProducttId) thì tôi sẽ có thể nhanh chóng sắp xếp hình ảnh trong khi hiển thị bằng cách sử dụng cái gì đó như thế này trong chế độ xem:
@foreach(Image i in Model.Image.OrderBy(e => e.DisplayOrder)){ //etc etc... }
Có đề cập đến một lớp Logic nghiệp vụ cụ thể, mà tôi cũng sử dụng để thực hiện 80% logic nghiệp vụ của mình, nhưng tôi sẽ không viết chức năng sắp xếp vào lớp Logic nghiệp vụ của mình bắt chước một thứ gì đó vượt trội từ Khung thực thể.
Tôi không nghĩ rằng có một câu trả lời chính xác cho câu hỏi này, ngoài việc nói điều đó; bạn nên trừu tượng logic kinh doanh phức tạp nếu có thể nhưng không phải trả giá cho việc phát minh lại bánh xe.