public async Task <ActionResult> SearchQuery(SearchViewModel query) { var userId = User.FindFirstValue(ClaimTypes.NameIdentifier); var user = _userManager.FindByIdAsync(userId).Result; var roles = await _userManager.GetRolesAsync(user); var managementService = _resourceManagementStrategy.FindService(roles.FirstOrDefault()); var resources = managementService.SearchResourcesByQuery(query.Query, user); return(View("SearchResults", resources)); }
// GET: Catalog public async Task <ActionResult> Index(long?catalogId) { var userId = User.FindFirstValue(ClaimTypes.NameIdentifier); var user = _userManager.FindByIdAsync(userId).Result; var roles = await _userManager.GetRolesAsync(user); var managementService = _resourceManagementStrategy.FindService(roles.FirstOrDefault()); var catalogs = managementService.GetCatalogsByParentCatalog(catalogId, user); var resources = managementService.GetResourcesByParentCatalog(catalogId, user); var tuple = new Tuple <IList <Catalog>, IList <Resource>, long?>(catalogs, resources, catalogId); return(View(tuple)); }