我現在用的是漂亮的小號#ARP信息庫和尋呼擴展方法加上排序是這樣的:automapper +延遲加載+ MVC的contrib電網+ S#ARP庫
public ViewResult Index(int? page, GridSortOptions sort)
{
ViewData["sort"] = sort;
if (!string.IsNullOrEmpty(sort.Column))
{
return View(this.LabService.GetAllLabs().OrderBy(sort.Column, sort.Direction).AsPagination(page ?? 1, 10));
}
...
我第一個問題是:
(1)它是正確的,因爲排序具有分頁之前完成,而這一切使用延遲加載(即在內部使用TOP n或東西在實際的SQL)?
一個當前MVC的contrib網格執行短缺憾的是,它不允許排序爲自定義列(例如組合的列值)像這樣:
String.Format("{0} {1}", lab.Proposer.LastName, lab.Proposer.FirstName)
(在視圖中使用)
我試圖避免在我的相當簡單的s#arp解決方案中查看模型,但也許我可以在這種情況下使用視圖模型來允許按自定義列進行排序。
我已經使用automapper映射域模型,在過去查看模式,反之亦然。但是,我有這個解決方案的一個問題。這仍然工作使用延遲加載?
換句話說不automapper不必所有域對象首先映射到視圖的對象之前它可以做排序和分頁導致性能降低?
我希望這是有道理的,你明白我在做什麼。謝謝。
最良好的祝願,
基督教