public static PageEntity ToPageEntity(this Page model) { PageEntity entity = new PageEntity(model.Site.Name, model.FullName); entity.IsDefault = model.IsDefault; if (model.Parent != null) { entity.ParentPage = model.Parent.FullName; } else { entity.ParentPage = ""; } entity.ObjectXml = DataContractSerializationHelper.SerializeAsXml(model, KnownTypes); return entity; }
private void RemovePageWithChildPages(TableServiceContext serviceContext, PageEntity entity) { serviceContext.DeleteObject(entity); var children = serviceContext.CreateQuery<PageEntity>(PageTable) .Where(it => it.PartitionKey == entity.SiteName && it.ParentPage == entity.FullName) .ToArray(); foreach (var item in children) { RemovePageWithChildPages(serviceContext, item); } }