private void DeleteSubFolderIfExists(string parentFolder, string subFolder) { var listChildrenResponse = reportingServicesClient.ListChildren(new ListChildrenRequest { ItemPath = $"/{parentFolder}", Recursive = false }); var items = listChildrenResponse.CatalogItems; var subFolderExists = items.Any(catalogItem => catalogItem.Name.ToUpperInvariant() == subFolder.ToUpperInvariant() && catalogItem.TypeName.ToUpperInvariant() == "FOLDER"); if (subFolderExists) { Log(@"Deleting sub folder '/{0}/{1}'.", parentFolder, subFolder); reportingServicesClient.DeleteItem(new DeleteItemRequest { ItemPath = $"/{parentFolder}/{subFolder}" }); Log(@"Deleted sub folder '/{0}/{1}'.", parentFolder, subFolder); } else { Log(@"Sub folder '/{0}/{1}' does not exist.", parentFolder, subFolder); } }