public async Task <IActionResult> SetPropertyAsync(string subject, string type)
        {
            if (IsNullOrWhiteSpace(subject))
            {
                ModelState["subject.String"].Errors.Clear();
                ModelState.AddModelError("", Messages.SubjectRequired);
            }

            type = type.FromBase64UrlEncoded();
            var value = await Request.Body.ReadAsStringAsync();

            var meta = await GetMetadataAsync();

            ValidateUpdateProperty(meta.RoleMetadata, type, value);

            if (ModelState.IsValid)
            {
                var result = await service.SetRolePropertyAsync(subject, type, value);

                if (result.IsSuccess)
                {
                    return(NoContent());
                }

                ModelState.AddErrors(result);
            }

            return(BadRequest(ModelState.ToError()));
        }
Beispiel #2
0
 public Task <IdentityManagerResult> SetRolePropertyAsync(string subject, string type, string value)
 {
     return(inner.SetRolePropertyAsync(subject, type, value));
 }