/// <summary> /// Delete sitemap area group /// </summary> /// <param name="id"></param> /// <param name="transaction"></param> public void DeleteAreaGroup(Guid id, NpgsqlTransaction transaction = null) { Guid?areaId = new SitemapAreaGroupRepository(connectionString).GetAreaIdByGroupId(id, transaction); Guid?appId = new SitemapAreaRepository(connectionString).GetAppIdByAreaId(areaId.Value, transaction); new SitemapAreaGroupRepository(connectionString).Delete(id, transaction); ClearAppCache(appId.Value); }
public void DeleteAreaInternal(Guid id, Guid appId, NpgsqlTransaction transaction = null) { SitemapAreaGroupRepository groupsRep = new SitemapAreaGroupRepository(connectionString); DataTable areaGroups = groupsRep.GetAreaGroups(id, transaction); foreach (DataRow entRow in areaGroups.Rows) { groupsRep.Delete((Guid)entRow["id"], transaction); } SitemapAreaNodeRepository nodesRep = new SitemapAreaNodeRepository(connectionString); DataTable areaNodes = nodesRep.GetAreaNodes(id, transaction); foreach (DataRow entRow in areaNodes.Rows) { DeleteAreaNode((Guid)entRow["id"], transaction); } new PageService(connectionString).UnbindPagesFromSitemapArea(id, transaction); new SitemapAreaRepository(connectionString).Delete(id, transaction); ClearAppCache(appId); }