public override void Remove(LayoutEntity item, bool saveImmediately = true) { LayoutHtmlService.Remove(m => m.LayoutId == item.ID); ZoneService.Remove(m => m.LayoutId == item.ID); PageService.Remove(m => m.LayoutId == item.ID); var widgets = WidgetService.Get(m => m.LayoutID == item.ID); widgets.Each(m => { using (var widgetService = WidgetActivator.Create(m)) { widgetService.DeleteWidget(m.ID); } }); MarkChanged(item.ID); base.Remove(item, saveImmediately); }
public override void RemoveRange(params LayoutEntity[] items) { items.Each(layout => { LayoutHtmlService.Remove(m => m.LayoutId == layout.ID); ZoneService.Remove(m => m.LayoutId == layout.ID); PageService.Remove(m => m.LayoutId == layout.ID); var widgets = WidgetService.Get(m => m.LayoutID == layout.ID); widgets.Each(m => { using (var widgetService = WidgetActivator.Create(m)) { widgetService.DeleteWidget(m.ID); } }); MarkChanged(layout.ID); }); base.RemoveRange(items); }
public override void Remove(Expression <Func <LayoutEntity, bool> > filter) { Get(filter).Each(layout => { LayoutHtmlService.Remove(m => m.LayoutId == layout.ID); ZoneService.Remove(m => m.LayoutId == layout.ID); PageService.Remove(m => m.LayoutId == layout.ID); var widgets = WidgetService.Get(m => m.LayoutID == layout.ID); widgets.Each(m => { using (var widgetService = WidgetActivator.Create(m)) { widgetService.DeleteWidget(m.ID); } }); MarkChanged(layout.ID); }); base.Remove(filter); }