Пример #1
0
        public ActionResult Edit([Bind(Include = "RolesId,UserId")] UsersRolesViewModel pUrserRole)
        {
            if (ModelState.IsValid)
            {
                var userEnity = (from user in context.Users where user.Id == pUrserRole.UserId select user).FirstOrDefault();

                userEnity.Roles.Clear();

                var rolesEnity = context.Roles.Where(x => pUrserRole.RolesId.Contains(x.Id)).ToList();

                foreach (var item in rolesEnity)
                {
                    Microsoft.AspNet.Identity.EntityFramework.IdentityUserRole userRole = new Microsoft.AspNet.Identity.EntityFramework.IdentityUserRole();
                    userRole.RoleId = item.Id;
                    userRole.UserId = userEnity.Id;

                    userEnity.Roles.Add(userRole);
                }

                context.Entry(userEnity).State = System.Data.Entity.EntityState.Modified;

                context.SaveChanges();

                return(RedirectToAction("Index"));
            }
            return(View(pUrserRole));
        }
        public override void AddUsersToRoles(string[] usernames, string[] roleNames)
        {
            foreach (var userName in usernames)
            {
                var roles = GetRolesForUser(userName);

                foreach (var roleName in roleNames)
                {
                    if (!roles.Contains(roleName))
                    {
                        using (var usersContext = new ApplicationDbContext())
                        {
                            var user = usersContext.Users.FirstOrDefault(u => u.UserName.Equals(userName, StringComparison.CurrentCultureIgnoreCase));
                            if (user != null)
                            {
                                var role = usersContext.Roles.FirstOrDefault(r => r.Name.Equals(roleName, StringComparison.CurrentCultureIgnoreCase));
                                if (role != null)
                                {
                                    var userRole = new Microsoft.AspNet.Identity.EntityFramework.IdentityUserRole();
                                    userRole.RoleId = role.Id;
                                    userRole.UserId = user.Id;
                                    user.Roles.Add(userRole);
                                }
                            }
                            usersContext.SaveChanges();
                        }
                    }
                }
            }
        }
 public override void AddUsersToRoles(string[] usernames, string[] roleNames)
 {
     foreach(var userName in usernames)
     {
         var roles = GetRolesForUser(userName);
         foreach(var roleName in roleNames)
         {
             if (!roles.Contains<string>(roleName))
             {
                 using (var usersContext = new ApplicationDbContext())
                 {
                     var user = usersContext.Users.FirstOrDefault(u => u.UserName.Equals(userName, StringComparison.CurrentCultureIgnoreCase));
                     if (user != null)
                     {
                         var role = usersContext.Roles.FirstOrDefault(r => r.Name.Equals(roleName, StringComparison.CurrentCultureIgnoreCase));
                         if (role != null)
                         {
                             var userRole = new Microsoft.AspNet.Identity.EntityFramework.IdentityUserRole();
                             userRole.RoleId = role.Id;
                             userRole.UserId = user.Id;
                             user.Roles.Add(userRole);
                         }
                     }
                     usersContext.SaveChanges();
                 }
             }
         }
     }
 }
        public ActionResult Ekle(String Role)
        {
            var user = db.Users.Find(Session["UserId"]);

            Microsoft.AspNet.Identity.EntityFramework.IdentityUserRole rol = new Microsoft.AspNet.Identity.EntityFramework.IdentityUserRole();
            rol.RoleId = int.Parse(Role).ToString();
            rol.UserId = Session["UserId"].ToString();
            user.Roles.Add(rol);
            db.SaveChanges();

            return(RedirectToAction("Uyeler", "UyeYonetimi"));
        }
Пример #5
0
        public ActionResult Edit([Bind(Include = "Id,PhoneNumber,UserName")] ApplicationUser userPosted, bool AdminPosted)
        {
            var user = db.Users.Find(userPosted.Id);

            if (!string.IsNullOrWhiteSpace(userPosted.PhoneNumber))
            {
                user.PhoneNumber = userPosted.PhoneNumber.Trim();
            }

            user.UserName = userPosted.UserName.Trim();


            if (AdminPosted == true && IsAdmin == false)
            {
                var adminRoleToAdd = new Microsoft.AspNet.Identity.EntityFramework.IdentityUserRole()
                {
                    RoleId = "1", UserId = user.Id
                };
                var userRoleToRemove = user.Roles.Where(r => r.RoleId == "2").First();

                user.Roles.Add(adminRoleToAdd);
                user.Roles.Remove(userRoleToRemove);
            }

            if (AdminPosted == false && IsAdmin == true)
            {
                var userRoleToAdd = new Microsoft.AspNet.Identity.EntityFramework.IdentityUserRole()
                {
                    RoleId = "2", UserId = user.Id
                };
                var adminRoleToRemove = user.Roles.Where(r => r.RoleId == "1").First();

                user.Roles.Add(userRoleToAdd);
                user.Roles.Remove(adminRoleToRemove);
            }



            if (ModelState.IsValid)
            {
                db.Entry(user).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            return(View(user));
        }
        public async Task <IHttpActionResult> Register(RegisterBindingModel model)
        {
            ApplicationUser user = new ApplicationUser()
            {
                FirstName = model.FirstName, LastName = model.LastName, UserName = model.Email, Email = model.Email
            };

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            IdentityResult result = await UserManager.CreateAsync(user, model.Password);

            if (!result.Succeeded)
            {
                return(GetErrorResult(result));
            }
            else
            {
                if (model.IsGuestUser)
                {
                    ApplicationDbContext db = new ApplicationDbContext();
                    Microsoft.AspNet.Identity.EntityFramework.IdentityRole role = db.Roles.FirstOrDefault(x => x.Name == "Guest");
                    var loginuser = db.Users.FirstOrDefault(x => x.Id == user.Id);
                    if (role == null)
                    {
                        role = new Microsoft.AspNet.Identity.EntityFramework.IdentityRole()
                        {
                            Id = Guid.NewGuid().ToString(), Name = "Guest"
                        };
                        db.Roles.Add(role);
                    }

                    var userRole = new Microsoft.AspNet.Identity.EntityFramework.IdentityUserRole
                    {
                        UserId = user.Id,
                        RoleId = role.Id
                    };

                    loginuser.Roles.Add(userRole);
                    db.SaveChanges();
                }
            }
            return(Ok());
        }