我有以下架构:
DAL (NHibernate) -> BLL -> WCF (http) -> Clients
客户对域模型一无所知。WCF 使用 DTO 对象与客户端通信。
其中一个客户端是一个网站 (ASP.NET MVC),它的网格很少。我需要为此网格实现排序。排序应该在服务端实现,因为客户端只接收请求的部分数据(分页)。
做这个的最好方式是什么?现在,我有两种方法似乎不太好。
- 为每个实体的每个属性制定服务合同的单独排序方法(在我的情况下为 36)
- 使用大量反射制作通用排序方法并从客户端接收魔术字符串(属性名称,方向)。
提前感谢您的帮助。