public ActionResult IndexPartial(Guid transactionId) { using (var context = dataContextFactory.CreateByUser()) { //Eager loading License var licensesByTransaction = (from l in context.Licenses where l.TransactionItems.FirstOrDefault().TransactionId == transactionId select l.ObjectId).ToList(); var customerAppByLicense = (from c in context.LicenseCustomerApps where licensesByTransaction.Contains(c.LicenseId) select c.CustomerAppId).ToList(); var customerApps = (from x in context.CustomerApps where customerAppByLicense.Contains(x.CustomerAppId) select x) .Include(x => x.LicenseCustomerApps) .Include(x => x.LicenseCustomerApps.Select(s => s.License)) .Include(x => x.CustomerAppKeys) .ToList(); var viewModel = new CustomerAppIndexViewModel(customerApps); return PartialView(viewModel); } }
/// <summary> /// Get list of CustomerApps /// </summary> /// <returns>CustomerApp index list view</returns> public ActionResult Index() { using (var context = dataContextFactory.CreateByUser()) { //Eager loading CustomerApp, includes Licenses and from License the SKUs var customerAppQuery = (from x in context.CustomerApps select x).Include(x => x.LicenseCustomerApps) .Include(x => x.LicenseCustomerApps.Select(s => s.License)) .Include(x => x.CustomerAppIssues) .OrderBy(x => x.ApplicationName); var viewModel = new CustomerAppIndexViewModel(customerAppQuery.ToList()); return View(viewModel); } }