// GET /api/[controller] public virtual async Task <ActionResult <IEnumerable <TViewModel> > > Get() { var valid = new List <TViewModel>(); var user = await CurrentUser; foreach (var entity in Filter(Database.Set <TData>(), user).Where(e => !e.Deleted)) { if (await Permissions.AllowRead(user, entity)) { valid.Add(await CreateViewModelAsync(entity)); } } return(valid); }
// GET /api/[controller] public virtual async Task <ActionResult <IEnumerable <TViewModel> > > Get(TKey parentId) { var valid = new List <TViewModel>(); var user = await CurrentUser; var parent = await Database.FindAsync <TParent>(parentId); if (parent == null) { return(NotFound()); } foreach (var entity in Filter(Database.Set <TData>(), parent, user).Where(e => !e.Deleted)) { if (await Permissions.AllowRead(user, entity)) { valid.Add(await CreateViewModelAsync(entity)); } } return(valid); }