/// <summary> /// This is the logic which will Display All Tenants and will separate them in pages and each page will show 20 items. /// </summary> /// <param name="page"></param> /// <returns></returns> public TenantsViewModel GetAllTenants(int?page) { TenantsViewModel model = new TenantsViewModel(); List <TenantViewModel> tenantsList = new List <TenantViewModel>(); var tenants = this.Context.Tenants.OrderBy(m => m.Id).ToArray(); if (page == null) { model.Pager = new Pager(tenants.Count(), 1, NumberOfItemsInPage); foreach (var tenant in tenants.Take(20)) { TenantViewModel tenantModel = Mapper.Map <Tenant, TenantViewModel>(tenant); tenantsList.Add(tenantModel); } model.Tenants = tenantsList; } else { model.Pager = new Pager(tenants.Count(), (int)page, NumberOfItemsInPage); model.Tenants = Mapper.Instance.Map <IEnumerable <Tenant>, IEnumerable <TenantViewModel> >( tenants.Skip((model.Pager.CurrentPage - 1) * model.Pager.PageSize).Take(model.Pager.PageSize)); } return(model); }
// GET: Tenant public ActionResult Index(int id) { if (id == 0) { return(HttpNotFound()); } using (var db = new RentalDBContext()) { Rental rental = db.Rentals.Find(id); if (rental == null) { return(HttpNotFound()); } var tenants = db.Tenants.Where(p => p.RentalID == id).ToList(); TenantsViewModel vModel = new TenantsViewModel() { //1 Rental = rental, //2 RentalName = rental.Name, RentalId = rental.Id, RentalName = rental.Name, Tenants = tenants }; return(View(vModel)); } }
public RentManagerWindow(TenantDatabase tenantDatabase) { DatabaseManager <MovieDatabase> databaseManager = new DatabaseManager <MovieDatabase>(StringConsts.MovieDatabaseLocation); movieDatabase = databaseManager.Locate(); tenantsViewModel = new TenantsViewModel(tenantDatabase); DataContext = tenantsViewModel; InitializeComponent(); }
public ActionResult Tenants(int?page) { TenantsViewModel model = this.tenantService.GetAllTenants(page); return(this.View(model)); }