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))); }
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()); }
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)); }
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()); }
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)); }
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(); } }
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)); }