private void RefreshSystemStoredProcedures(ObjectExplorerNode selectedFolderNode)
        {
            var database      = selectedFolderNode.GetDatabaseFromNode();
            var nodesToRemove = _objectExplorerDataSource.DataSource.Where(r =>
                                                                           r.Type == GlobalStrings.ObjectExplorerTypes.StoredProcedure &&
                                                                           r.GetDatabaseFromNode().Name == database.Name && r.ParentId == selectedFolderNode.Id).ToList();

            _objectExplorerDataSource.RemoveListOfNodes(nodesToRemove);
            database.StoredProcedures.Refresh(true);
        }
        private static void RemoveAllFoldersForDatabase(Database database, ObjectExplorerDataSource source)
        {
            var foldersToRemove = source.DataSource.Where(r => IsFolderForDatabase(r) &&
                                                          r.GetDatabaseFromNode().Name == database.Name);

            source.RemoveListOfNodes(foldersToRemove);
        }
        private static void RemoveAllStoredProceduresForDatabase(Database database, ObjectExplorerDataSource source)
        {
            var storedProceduresToRemove = source.DataSource.Where(r => r.Type == GlobalStrings.ObjectExplorerTypes.StoredProcedure &&
                                                                   r.GetDatabaseFromNode().Name == database.Name);

            source.RemoveListOfNodes(storedProceduresToRemove);
        }
        private static void RemoveAllFunctionsForDatabase(Database database, ObjectExplorerDataSource source)
        {
            var functionsToRemove = source.DataSource.Where(r => r.Type == GlobalStrings.ObjectExplorerTypes.Function &&
                                                            r.GetDatabaseFromNode().Name == database.Name);

            source.RemoveListOfNodes(functionsToRemove);
        }
        public static void RemoveAllStoredProceduresNodesForDatabase(this Database database, ObjectExplorerDataSource source)
        {
            RemoveAllStoredProceduresForDatabase(database, source);
            var systemStoredProcedureFolderToRemove = source.DataSource.Where(r =>
                                                                              r.DisplayName ==
                                                                              GlobalStrings.FolderTypes.SystemStoredProcedureFolder &&
                                                                              r.GetDatabaseFromNode().Name == database.Name).ToList();

            source.RemoveListOfNodes(systemStoredProcedureFolderToRemove);
        }