Beispiel #1
0
        /// <summary>
        /// 清空指定目录下所有文件及子目录,但该目录依然保存.
        /// </summary>
        /// <param name="env"></param>
        /// <param name="directoryPath">指定目录的绝对路径</param>
        public static void ClearDirectory(this IHostingEnvironment env, string directoryPath)
        {
            directoryPath = Path.Combine(env.ContentRootPath, directoryPath);
            if (IsExistDirectory(directoryPath))
            {
                //删除目录中所有的文件
                string[] fileNames = GetFileNames(directoryPath);
                foreach (var fileName in fileNames)
                {
                    env.DeleteFile(fileName);
                }

                //删除目录中所有的子目录
                string[] directoryNames = GetDirectories(directoryPath);
                foreach (var directoryName in directoryNames)
                {
                    env.DeleteDirectory(directoryName);
                }
            }
        }