示例#1
0
        public async Task <IHttpActionResult> PostAsync([FromBody] RuleItemDto model, CancellationToken cancellationToken)
        {
            if (model == null)
            {
                return(BadRequest());
            }
            var user = await _userManager.FindByIdAsync(ApiSecurity.CurrentUserId, cancellationToken);

            if (user == null)
            {
                return(StatusCode(HttpStatusCode.Forbidden));
            }
            var rule             = ModelMapper.ToRuleItem(model);
            var validationResult = await _ruleManager.CreateAsync(rule, user, cancellationToken);

            if (validationResult.Succeeded == false)
            {
                return(this.ValidationContent(validationResult));
            }
            return(new RuleItemContentResult(HttpStatusCode.Created, rule, this));
        }