Beispiel #1
0
 private IEnumerable <Page> QueryBySite(Site site)
 {
     return(CloudTableHelper.GetTableServiceContext().CreateQuery <PageEntity>(PageTable)
            .Where(it => it.PartitionKey == site.FullName && it.ParentPage == "")
            .ToArray()
            .Select(it => PageEntityHelper.ToPage(it)));
 }
Beispiel #2
0
 public IQueryable <Models.Page> ChildPages(Models.Page parentPage)
 {
     return(CloudTableHelper.GetTableServiceContext().CreateQuery <PageEntity>(PageTable)
            .Where(it => it.PartitionKey == parentPage.Site.FullName && it.ParentPage == parentPage.FullName)
            .ToArray()
            .Select(it => PageEntityHelper.ToPage(it))
            .AsQueryable());
 }
Beispiel #3
0
        public Models.Page Get(Models.Page dummy)
        {
            var entity = CloudTableHelper.GetTableServiceContext().CreateQuery <PageEntity>(PageTable)
                         .Where(it => it.PartitionKey == dummy.Site.FullName && it.RowKey == dummy.FullName)
                         .FirstOrDefault();

            return(PageEntityHelper.ToPage(entity));
        }
Beispiel #4
0
 private IQueryable <Page> AllPagesNested(Site site)
 {
     return(CloudTableHelper.GetTableServiceContext().CreateQuery <PageEntity>(PageTable)
            .Where(it => it.SiteName == site.FullName)
            .ToArray()
            .Select(it => PageEntityHelper.ToPage(it))
            .AsQueryable());
 }
Beispiel #5
0
        public Models.Page GetDefaultPage(Models.Site site)
        {
            var entity = CloudTableHelper.GetTableServiceContext().CreateQuery <PageEntity>(PageTable)
                         .Where(it => it.PartitionKey == site.FullName)
                         .Where(it => it.IsDefault == true)
                         .FirstOrDefault();

            return(PageEntityHelper.ToPage(entity));
        }
Beispiel #6
0
        public void RemoveDraft(Models.Page page)
        {
            var serviceContext = CloudTableHelper.GetTableServiceContext();
            var entity         = serviceContext.CreateQuery <PageEntity>(PageDraftTable)
                                 .Where(it => it.PartitionKey == page.Site.FullName && it.RowKey == page.FullName)
                                 .Select(it => PageEntityHelper.ToPage(it)).FirstOrDefault();

            if (entity != null)
            {
                serviceContext.DeleteObject(entity);
                serviceContext.SaveChangesWithRetries();
            }
        }
Beispiel #7
0
        public Models.Page Copy(Models.Site site, string sourcePageFullName, string newPageFullName)
        {
            var page    = Get(new Page(site, sourcePageFullName));
            var newPage = new Page(site, newPageFullName);
            var entity  = PageEntityHelper.ToPageEntity(page);

            entity.FullName = newPageFullName;
            if (newPage.Parent != null)
            {
                entity.ParentPage = newPage.Parent.FullName;
            }

            var serviceContext = CloudTableHelper.GetTableServiceContext();

            serviceContext.AddObject(PageTable, entity);
            serviceContext.SaveChangesWithRetries();

            return(PageEntityHelper.ToPage(entity));
        }