示例#1
0
 public User RegAdmin(User user)
 {
     if (user == null)
     {
         throw new ArgumentNullException("username");
     }
     var reps = PrivilegeContextProvider.GetRepository();
     using (reps)
     {
         var userUnit = reps.Use<User>();
         if (userUnit.Any(x => true))
         {
             throw new ApplicationException("系统已存在用户,无法直接注册管理员");
         }
         var roleUnit = reps.Use<Role>();
         var role = new Role()
         {
             Description = PrivilegeContextProvider.SystemRoleName,
             Id = roleUnit.GetSequenceId(),
             Name = PrivilegeContextProvider.SystemRoleName
         };
         roleUnit.Add(role);
         User entity = new User
         {
             Password = StringHelper.EncodePassword(user.Username, user.Password),
             Status = BaseStatuses.Valid,
             CreateTime = user.CreateTime,
             Description = user.Description,
             Username = user.Username,
             DepartmentId = user.DepartmentId,
             Id = userUnit.GetSequenceId()
         };
         user = userUnit.Add(entity);
         UserRole userRole = new UserRole();
         userRole.RoleId = role.Id;
         userRole.UserId = entity.Id;
         reps.Use<UserRole>().Add(userRole);
         reps.SaveChanges();
         HttpRuntime.Cache.Remove("FirstStart");
         return user;
     }
 }
示例#2
0
 public void AddUserRole(int roleId, int userId)
 {
     UserRole entity = new UserRole
     {
         RoleId = roleId,
         UserId = userId
     };
     var reps = ConfigManager.PrivilegeProvider.GetRepository();
     reps.Use<UserRole>().Add(entity);
     reps.SaveChanges();
 }