示例#1
0
        public virtual async Task <IdentityResult> AddClaimAsync(IdentityRole role, Claim claim, CancellationToken cancellationToken = default)
        {
            ThrowIfDisposed();
            role.CheakArgument();
            claim.CheakArgument();
            var f2 = await DbEntitySet.AnyAsync(d => d.Id.Equals(role.Id));

            if (f2)
            {
                var flag = await RoleClaims.AnyAsync(a => a.ClaimType.Equals(claim.Type) &&
                                                     a.ClaimValue.Equals(claim.Value) && a.RoleId.Equals(role.Id));

                if (!flag)
                {
                    RoleClaims.Add(CreateRoleClaim(role, claim));
                    return(await SaveChangesAsync(cancellationToken));
                }
            }
            return(IdentityResult.Failed("已经存在该权限"));
        }
示例#2
0
        public override async Task <IdentityResult> UpdateAsync(IdentityPermission entity, CancellationToken cancellationToken, params string[] propertys)
        {
            bool flag = await DbEntitySet.AnyAsync(a => !a.Id.Equals(entity.Id) && a.Controller.Equals(entity.Controller) && a.Action.Equals(entity.Action) && a.AreaName.Equals(entity.AreaName));

            return(flag ? IdentityResult.Failed("已经有该记录") : await base.UpdateAsync(entity, cancellationToken, propertys));
        }
示例#3
0
        public override async Task <IdentityResult> CreateAsync(IdentityPermission entity, CancellationToken cancellationToken)
        {
            bool flag = await DbEntitySet.AnyAsync(a => a.Controller.Equals(entity.Controller) && a.Action.Equals(entity.Action) && a.AreaName.Equals(entity.AreaName));

            return(flag ? IdentityResult.Failed("已经有该记录") : await base.CreateAsync(entity, cancellationToken));
        }