Пример #1
0
        public static void DefineDomains(List <DomainModel> domainModels, IConfiguration configuration, DomainService _domains)
        {
            Configuration = configuration;
            EdgeAddress   = configuration["EDGE_ADDRESS"];
            EdgeAPIToken  = configuration["EDGE_API_TOKEN"];

            if (domains.Count != 0)
            {
                throw new AccessViolationException("Domains already defined");
            }
            foreach (DomainModel domain in domainModels)
            {
                DomainModel DBdomain = _domains.GetByDomain(domain.DomainName);
                if (DBdomain == null)
                {
                    DBdomain = _domains.Create(domain);
                }
                if (DBdomain.DomainName != domain.DomainName)
                {
                    DBdomain.DomainName = domain.DomainName;
                    _domains.Update(DBdomain.Id, DBdomain);
                }
                domains.Add(DBdomain.Key, DBdomain);
            }
        }
Пример #2
0
        public async Task <IActionResult> Create(string token, Domain domain)
        {
            var result = await _domainService.Create(token, domain);

            if (result.IsSuccessStatusCode)
            {
                return(Ok(result.Body.ToString()));
            }

            return(StatusCode((int)result.StatusCode, result.Message));
        }
        public virtual Result <TReadDto> Create(TCreateDto dto, string createdBy)
        {
            var validatableObject = dto as IObjectValidatable;

            if (validatableObject != null)
            {
                var objectValidationErrors = validatableObject.Validate().ToList();
                if (objectValidationErrors.Any())
                {
                    return(Result.ObjectValidationFail <TReadDto>(objectValidationErrors));
                }
            }

            var bo = Mapper.Map <TEntity>(dto);

            var result = DomainService.Create(bo, createdBy);

            if (result.IsFailure)
            {
                switch (result.ErrorType)
                {
                case ErrorType.ObjectValidationFailed:
                    return(Result.ObjectValidationFail <TReadDto>(result.ObjectValidationErrors));

                default:
                    throw new ArgumentException();
                }
            }

            var readDto = Mapper.Map <TReadDto>(bo);

            if (HubContext != null)
            {
                HubContext.CreatedAsync(readDto).Wait();
            }

            return(Result.Ok(readDto));
        }