public IHttpActionResult PostAspNetResource(AspNetResource aspNetResource) { aspNetResource.Id = Guid.NewGuid().ToString(); aspNetResource.CreatedBy = User.Identity.Name; aspNetResource.ModifiedBy = User.Identity.Name; if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.AspNetResources.Add(aspNetResource); try { db.SaveChanges(); } catch (DbUpdateException) { if (AspNetResourceExists(aspNetResource.Id)) { return(Conflict()); } else { throw; } } return(Ok()); }
public IHttpActionResult PutAspNetResource(string id, AspNetResource aspNetResource) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != aspNetResource.Id) { return(BadRequest()); } db.Entry(aspNetResource).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!AspNetResourceExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public IHttpActionResult GetAspNetResource(string id) { AspNetResource aspNetResource = db.AspNetResources.Find(id); if (aspNetResource == null) { return(NotFound()); } return(Ok(aspNetResource)); }
public IHttpActionResult DeleteAspNetResource(string id) { AspNetResource aspNetResource = db.AspNetResources.Find(id); if (aspNetResource == null) { return(NotFound()); } db.AspNetResources.Remove(aspNetResource); db.SaveChanges(); return(Ok(aspNetResource)); }
private static void AddPermissions(List <SeedResource> resources, ApplicationDbContext context, List <ApplicationRole> dbRoles) { foreach (SeedResource seedResource in resources) { var dbResource = context.AspNetResources.FirstOrDefault(x => x.Name == seedResource.Name); if (dbResource == null) { dbResource = new AspNetResource() { Name = seedResource.Name, IsPublic = seedResource.IsPublic, Id = Guid.NewGuid().ToString(), Created = DateTime.Now, Modified = DateTime.Now, CreatedBy = admin, ModifiedBy = admin }; context.AspNetResources.Add(dbResource); context.SaveChanges(); Console.WriteLine("Adding Resource: " + dbResource.Name); } var allowedRoles = seedResource.Permissions.ToList(); foreach (string allowedRole in allowedRoles) { var dbRole = dbRoles.First(x => x.Name == allowedRole); var permission = context.AspNetPermission.FirstOrDefault(x => x.RoleId == dbRole.Id && x.ResourceId == dbResource.Id); if (permission == null) { permission = new AspNetPermission() { IsAllowed = true, ResourceId = dbResource.Id, RoleId = dbRole.Id, Id = Guid.NewGuid().ToString(), Created = DateTime.Now, Modified = DateTime.Now, CreatedBy = admin, ModifiedBy = admin }; context.AspNetPermission.Add(permission); context.SaveChanges(); Console.WriteLine("Adding permission : resource - " + dbResource.Name + "\t role - " + dbRole.Name); } } } }