AutomaPPer + Lazy Loading + MVC Wipe Grid + S # ARP Репозитории
-
16-09-2020 - |
Вопрос
Я использую приятные репозитории 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).
Один из коротких комиций текущего MVC Advail Advail - это то, что он не позволяет сортировку для индивидуальных столбцов (например, комбинированные значения столбцов), как это:
String.Format("{0} {1}", lab.Proposer.LastName, lab.Proposer.FirstName)
.
(используется в поле зрения)
Я пытался избежать моделей просмотра моментов в моем довольно простом решении S # ARP, но, возможно, я мог бы сделать с моделью представления в этом случае, чтобы позволить сортировку пользовательскими колонками.
Я использовал AutomApper для отображения моделей домена для просмотра моделей и наоборот в прошлом. Тем не менее, у меня есть одна проблема с этим решением. Это все еще работает, используя ленивую загрузку?
Другими словамиДругими словами, не должно сначала сопоставлять все объекты домена на объекты просмотра, прежде чем он сможет сделать сортировку и пейджинг, что приводит к снижению производительности?
Я надеюсь, что это имеет смысл, и вы понимаете, что я получаю. Спасибо.
наилучшие пожелания,
Christian
Решение
-
Да сортировка и запросы (где что-то= bla bla) должно быть сделано до того, как пейджинг, на самом деле вы должны заботиться об этом, только если вы пишете SQL, в противном случае, если вы используете Hibernate или Linq2SQL или что-то подобное, чем вы не'T
-
all authoapper делает, принимает значения из одного объекта и вкладывая его в другой объект (есть некоторые вовлеченные преобразования данных, конфигурация и все это), если вы не пишете некоторые вещи в пользовательском валютере, где вы можетев основном напишите что-нибудь, и после того, как вы сможете использовать этот Valueresolver для некоторого конкретного свойства
Приветствия