public void Delete(string id) { PreCondition preCondition = null; var preConditionId = new PreConditionId(id); Site site = preConditionId.SiteId == null ? null : SiteHelper.GetSite(preConditionId.SiteId.Value); if (preConditionId.SiteId == null || site != null) { preCondition = OutboundRulesHelper.GetSection(site, preConditionId.Path).PreConditions.FirstOrDefault(pc => pc.Name.Equals(preConditionId.Name, StringComparison.OrdinalIgnoreCase)); } if (preCondition != null) { var section = OutboundRulesHelper.GetSection(site, preConditionId.Path, ManagementUnit.ResolveConfigScope()); OutboundRulesHelper.DeletePreCondition(preCondition, section); ManagementUnit.Current.Commit(); } Context.Response.StatusCode = (int)HttpStatusCode.NoContent; }