diff --git a/products/ASC.Files/Server/Core/Dao/TeamlabDao/FolderDao.cs b/products/ASC.Files/Server/Core/Dao/TeamlabDao/FolderDao.cs index 7357b685a3..4d9e06a8d7 100644 --- a/products/ASC.Files/Server/Core/Dao/TeamlabDao/FolderDao.cs +++ b/products/ASC.Files/Server/Core/Dao/TeamlabDao/FolderDao.cs @@ -408,8 +408,9 @@ namespace ASC.Files.Core.Data var treeToDelete = FilesDbContext.Tree.Where(r => subfolders.Any(a => r.FolderId == a)); FilesDbContext.Tree.RemoveRange(treeToDelete); + var subfoldersStrings = subfolders.Select(r => r.ToString()).ToList(); var linkToDelete = Query(FilesDbContext.TagLink) - .Where(r => subfolders.Any(a => r.EntryId == a.ToString())) + .Where(r => subfoldersStrings.Any(a => r.EntryId == a)) .Where(r => r.EntryType == FileEntryType.Folder); FilesDbContext.TagLink.RemoveRange(linkToDelete); @@ -419,7 +420,7 @@ namespace ASC.Files.Core.Data FilesDbContext.Tag.RemoveRange(tagsToRemove); var securityToDelete = Query(FilesDbContext.Security) - .Where(r => subfolders.Any(a => r.EntryId == a.ToString())) + .Where(r => subfoldersStrings.Any(a => r.EntryId == a)) .Where(r => r.EntryType == FileEntryType.Folder); FilesDbContext.Security.RemoveRange(securityToDelete); @@ -603,7 +604,7 @@ namespace ASC.Files.Core.Data var parentIdString = parentId.ToString(); var count = FilesDbContext.Tree .Where(r => r.ParentId.ToString() == parentIdString) - .Where(r => r.Level >= 0) + .Where(r => r.Level > 0) .Count(); return count;