public void Should_Delete_Page_Content()
        {
            RunActionInTransaction(session =>
            {
                // Create content
                var content = TestDataProvider.CreateNewHtmlContent();
                var pageContent = TestDataProvider.CreateNewPageContent(content);

                session.SaveOrUpdate(pageContent);
                session.Flush();
                session.Clear();

                // Delete page content
                var request = new DeletePageContentCommandRequest
                                  {
                                      PageContentId = pageContent.Id,
                                      PageContentVersion = pageContent.Version,
                                      ContentVersion = content.Version
                                  };
                var unitOfWork = new DefaultUnitOfWork(session);
                var repository = new DefaultRepository(unitOfWork);
                var contentService = Container.Resolve<IContentService>();
                var command = new DeletePageContentCommand(contentService);
                command.UnitOfWork = unitOfWork;
                command.Repository = repository;

                var result = command.Execute(request);
                Assert.IsTrue(result);
            });
        }
        public ActionResult DeletePageContent(string pageContentId, string pageContentVersion, string ContentVersion)
        {
            var request = new DeletePageContentCommandRequest
                              {
                                  pageContentId = pageContentId.ToGuidOrDefault(),
                                  PageContentVersion = pageContentVersion.ToIntOrDefault(),
                                  ContentVersion = ContentVersion.ToIntOrDefault(),
                              };

            bool success = GetCommand<DeletePageContentCommand>().ExecuteCommand(request);

            return Json(new WireJson { Success = success });
        }
        public ActionResult DeletePageContent(string pageContentId, string pageContentVersion, string contentVersion, string isUserConfirmed)
        {
            try
            {
                var request = new DeletePageContentCommandRequest
                                  {
                                      PageContentId = pageContentId.ToGuidOrDefault(),
                                      PageContentVersion = pageContentVersion.ToIntOrDefault(),
                                      ContentVersion = contentVersion.ToIntOrDefault(),
                                      IsUserConfirmed = isUserConfirmed.ToBoolOrDefault()
                                  };

                var success = GetCommand<DeletePageContentCommand>().ExecuteCommand(request);

                return Json(new WireJson(success));
            }
            catch (ConfirmationRequestException exc)
            {
                return Json(new WireJson { Success = false, Data = new { ConfirmationMessage = exc.Resource() } });
            }
        }