public override void DeleteDirectory(string VirtualPath)
{
if (!DirectoryExists(VirtualPath.VirtualPathToDbPath()))
return;
FileSystem.FileStoreDb db = new FileSystem.FileStoreDb(this.connectionString);
var query = db.FileStoreDirectories.Where(x => x.FullPath.ToLower() == VirtualPath.VirtualPathToDbPath().ToLower() && x.BlogID == Blog.CurrentInstance.Id);
foreach (var item in query)
{
var subDirectories = db.FileStoreDirectories.Where(x => x.ParentID == item.Id);
foreach (var sb in subDirectories)
DeleteDirectory(sb.FullPath);
}
db.FileStoreDirectories.DeleteAllOnSubmit(query);
db.SubmitChanges();
db.Dispose();
}