Esempio n. 1
0
        private void CreateComponent(IEndpointRequest request)
        {
            var component        = request.Body <ComponentRecord>();
            var websiteVersionId = request.Parameter <long?>("websiteVersionId");
            var scenario         = request.Parameter <string>("scenario");

            var result = _dataLayer.CreateComponent(request.Identity, component);

            if (!result.Success)
            {
                request.BadRequest(result.DebugMessage);
                return;
            }

            component = _dataLayer.GetComponent(result.NewRecordId, l => l);
            if (component == null)
            {
                request.HttpStatus(
                    HttpStatusCode.InternalServerError,
                    "After creating the new component it could not be found in the database");
                return;
            }

            if (websiteVersionId.HasValue)
            {
                _dataLayer.AddComponentToWebsiteVersion(request.Identity, component.RecordId, 1, websiteVersionId.Value, scenario);
            }
            request.Success(component);
        }