public static ClientsListViewModel MapClientsListToView(IQueryable <Client> clients, ApplicationDb context) { ClientsListViewModel vModel = new ClientsListViewModel(); vModel.Clients = clients.Select(s => new ClientsViewModel() { ID = s.ID, FirstName = s.FirstName, LastName = s.LastName, ClientEmail = s.ClientEmail, Street = s.Street, Town = s.Town, PostalCode = s.PostalCode, VoivodeshipName = context.Voivodeships.Where(v => v.ID == s.Voivodeship).Select(v => v.Name).First(), CountryName = context.Countries.Where(v => v.ID == s.Country).Select(v => v.Name).First(), ownerID = s.ownerID }).ToList(); return(vModel); }
public IActionResult Admin(string filter, int pageNumber = 1) { TempData["filter"] = filter; ViewBag.Updated = TempData["updated"]; Func <Client, bool> filterFunction = c => String.IsNullOrEmpty(filter) || c.Name.CaseInsensitiveContains(filter) || c.Contact.CaseInsensitiveContains(filter) || c.ContactEmail == filter; ClientsListViewModel viewModel = new ClientsListViewModel(); viewModel.CurrentFilter = filter; viewModel.Clients = _clientsRepo.Clients .Include(c => c.ClientType) .Where(filterFunction) .OrderBy(c => c.Id) .Skip((pageNumber - 1) * PageSize) .Take(PageSize); viewModel.PagingInfo = new PagingInfo { CurrentPage = pageNumber, ItemsPerPage = PageSize, TotalItems = _clientsRepo.Clients.Count(filterFunction) }; return(View(viewModel)); }
public ClientsListView() { InitializeComponent(); DataContext = new ClientsListViewModel(); }