Esempio n. 1
0
 public ActionResult CreatePermission(NewAppPermissionViewModel model)
 {
     using (var context = new AppSecurityContext())
     {
         var actionRepository     = new ActionRepository(context);
         var resourceRepository   = new ResourceRepository(context);
         var permissionRepository = new PermissionRepository(context);
         try
         {
             var resource = resourceRepository.Find(model.SelectedResource);
             var actions  = actionRepository.Query(x => model.SelectedActions.Contains(x.Key));
             foreach (var action in actions)
             {
                 var permission = new AppPermission();
                 permission.Action   = action;
                 permission.Resource = resource;
                 permissionRepository.Add(permission);
             }
             context.SaveChanges();
             return(RedirectToAction("Permissions"));
         }
         catch (Exception ex)
         {
             ViewBag.Error = ex.Message;
             var actions = actionRepository.GetAll().OrderBy(x => x.Name);
             model.AvailableActions = mapper.Map <ICollection <AppActionViewModel> >(actions);
             model.ResourcesList    = PopulateResourcesForNewPermission(model.SelectedResource);
             return(View(model));
         }
     }
 }
Esempio n. 2
0
        public ActionResult CreatePermission()
        {
            var model = new NewAppPermissionViewModel();

            using (var context = new AppSecurityContext())
            {
                var actionRepository = new ActionRepository(context);
                var actions          = actionRepository.GetAll().OrderBy(x => x.Name);

                model.AvailableActions = mapper.Map <ICollection <AppActionViewModel> >(actions);
                model.ResourcesList    = PopulateResourcesForNewPermission(model.SelectedResource);
                return(View(model));
            }
        }