Microsoft.Isam.Esent.Collections.Generic.PersistentDictionaryFile.DeleteFiles C# (CSharp) Method

DeleteFiles() public static method

Delete all files associated with a PersistedDictionary database from the specified directory.
public static DeleteFiles ( string directory ) : void
directory string The directory to delete the files from.
return void
        public static void DeleteFiles(string directory)
        {
            if (null == directory)
            {
                throw new ArgumentNullException("directory");
            }

            if (Directory.Exists(directory))
            {
                var config = new PersistentDictionaryConfig();
                var databasePath = Path.Combine(directory, config.Database);
                File.Delete(databasePath);
                File.Delete(Path.Combine(directory, String.Format(CultureInfo.InvariantCulture, "{0}.chk", config.BaseName)));
                foreach (string file in Directory.GetFiles(directory, String.Format(CultureInfo.InvariantCulture, "{0}*.log", config.BaseName)))
                {
                    File.Delete(file);
                }

                foreach (string file in Directory.GetFiles(directory, String.Format(CultureInfo.InvariantCulture, "{0}*.jrs", config.BaseName)))
                {
                    File.Delete(file);
                }
            }
        }

Usage Example

        // File/Directory not availble in Windows Store Apps.
#else
        /// <summary>
        /// Delete all files associated with a PersistedDictionary database from
        /// the specified directory.
        /// </summary>
        /// <param name="directory">The directory to delete the files from.</param>
        public static void DeleteFiles(string directory)
        {
            if (null == directory)
            {
                throw new ArgumentNullException("directory");
            }

            if (Directory.Exists(directory))
            {
                var defaultConfig = PersistentDictionaryDefaultConfig.GetDefaultDatabaseConfig();
                var config        = new DatabaseConfig()
                {
                    DatabaseFilename = Path.Combine(directory, defaultConfig.DatabaseFilename),
                    SystemPath       = directory,
                    LogFilePath      = directory,
                    TempPath         = directory,
                };
                config.Merge(defaultConfig, MergeRules.KeepExisting);
                PersistentDictionaryFile.DeleteFiles(config);
            }
        }
PersistentDictionaryFile