Проблема в том, что вы пытаетесь записать в тот же файл, из которого читаете (ваш файл output
находится в sourceDir и соответствует фильтру "*.csv"
.
Возможно несколькоРешения:
1. Выберите все файлы , кроме выходного файла для чтения:
File.WriteAllLines(output, Directory.EnumerateFiles(sourceDir, @"*.csv")
.Where(path => !path.Equals(output, StringComparison.OrdinalIgnoreCase))
.SelectMany(File.ReadLines));
2. Поместите ваш выходной файл вдругая папка:
string output = @"C:\DIPV3\restuls\result.csv";
3. Сначала прочитайте все содержимое, затем напишите результат:
IEnumerable<string> contents = Directory.EnumerateFiles(sourceDir, @"*.csv")
.SelectMany(File.ReadLines).ToList();
File.WriteAllLines(output, contents);