public override int Delete(Data.DataFilter filter) { var deletes = this.Get(filter).ToList(m => m.ID); if (deletes.Any()) { var layoutHtmlService = new LayoutHtmlService(); layoutHtmlService.Delete(new Data.DataFilter().Where <LayoutHtml>(m => m.LayoutId, OperatorType.In, deletes)); var zoneService = new ZoneService(); zoneService.Delete(new Data.DataFilter().Where <ZoneEntity>(m => m.LayoutId, OperatorType.In, deletes)); var pageService = new Page.PageService(); pageService.Delete(new Data.DataFilter().Where("LayoutId", OperatorType.In, deletes)); var widgetService = new Widget.WidgetService(); var widgets = widgetService.Get(new Data.DataFilter().Where("LayoutId", OperatorType.In, deletes)); widgets.Each(m => { m.CreateServiceInstance().DeleteWidget(m.ID); }); } Signal.Trigger(LayoutChanged); return(base.Delete(filter)); }
public override int Delete(params object[] primaryKeys) { LayoutEntity layout = Get(primaryKeys); var layoutHtmlService = new LayoutHtmlService(); layoutHtmlService.Delete(new Data.DataFilter().Where <LayoutHtml>(m => m.LayoutId, OperatorType.Equal, layout.ID)); var zoneService = new ZoneService(); zoneService.Delete(new Data.DataFilter().Where <ZoneEntity>(m => m.LayoutId, OperatorType.Equal, layout.ID)); var pageService = new Page.PageService(); pageService.Delete(new DataFilter().Where("LayoutId", OperatorType.Equal, layout.ID)); var widgetService = new WidgetService(); var widgets = widgetService.Get(new DataFilter().Where("LayoutId", OperatorType.Equal, layout.ID)); widgets.Each(m => { m.CreateServiceInstance().DeleteWidget(m.ID); }); Signal.Trigger(LayoutChanged); return(base.Delete(primaryKeys)); }
public IEnumerable <WidgetBase> GetAllByPageId(string pageId) { var page = new Page.PageService().Get(pageId); var result = GetByLayoutId(page.LayoutId); List <WidgetBase> widgets = result.ToList(); widgets.AddRange(this.Get(new DataFilter().Where("PageID", OperatorType.Equal, pageId))); return(widgets); }