/// <summary> /// DeleteRuleCategory /// </summary> /// <param name="ruleId">ruleId</param> /// <param name="companyId">companyId</param> private void DeleteRuleCategory(int ruleId, int companyId) { // Delete RuleCategoryUnits RuleCategoryUnits ruleCategoryUnits = new RuleCategoryUnits(null); RuleCategoryUnitsGateway ruleCategoryUnitsGateway = new RuleCategoryUnitsGateway(null); if (ruleCategoryUnitsGateway.IsRuleUsed(ruleId)) { ruleCategoryUnits.DeleteDirectByRuleId(ruleId, companyId); } // Load all categories CategoryGateway categoryGateway = new CategoryGateway(); categoryGateway.Load(companyId); // Delete rule categories if (categoryGateway.Table.Rows.Count > 0) { foreach (CategoriesTDS.LFS_FM_CATEGORYRow row in (CategoriesTDS.LFS_FM_CATEGORYDataTable)categoryGateway.Table) { int categoryId = row.CategoryID; RuleCategoryGateway ruleCategoryGateway = new RuleCategoryGateway(null); if (ruleCategoryGateway.IsUsedInRuleCategory(ruleId, categoryId)) { RuleCategory ruleCategory = new RuleCategory(null); ruleCategory.DeleteDirect(ruleId, categoryId, companyId); } } } }