コード例 #1
0
        private void CreatePage(IEndpointRequest request)
        {
            var page             = request.Body <PageRecord>();
            var websiteVersionId = request.Parameter <long?>("websiteVersionId");
            var scenario         = request.Parameter <string>("scenario");

            var result = _dataLayer.CreatePage(request.Identity, page);

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

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

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