diff --git a/src/EasyAbp.FileManagement.EntityFrameworkCore/EasyAbp/FileManagement/Files/FileRepository.cs b/src/EasyAbp.FileManagement.EntityFrameworkCore/EasyAbp/FileManagement/Files/FileRepository.cs index 83e2edb..1710bdb 100644 --- a/src/EasyAbp.FileManagement.EntityFrameworkCore/EasyAbp/FileManagement/Files/FileRepository.cs +++ b/src/EasyAbp.FileManagement.EntityFrameworkCore/EasyAbp/FileManagement/Files/FileRepository.cs @@ -120,11 +120,11 @@ public virtual async Task GetFileNameWithNextSerialNumberAsync(string fi var nextNumber = fileNames .Select(x => - x.Substring(part1.Length, x.LastIndexOf(part2, StringComparison.Ordinal) - part1.Length)) + x.LastIndexOf(part2, StringComparison.Ordinal) > 0 ? x.Substring(part1.Length, x.LastIndexOf(part2, StringComparison.Ordinal) - part1.Length) : "") .Select(x => int.TryParse(x, out var number) ? number : 0).Where(x => x > 0).OrderBy(x => x) .TakeWhile((x, i) => x == i + 1).LastOrDefault() + 1; return $"{part1}{nextNumber}{part2}"; } } -} \ No newline at end of file +}