Мой веб-сервис записывает файлы, которые читаются другой программой. Чтобы программа не прочитала их до того, как они закончат запись, я называю их .tmp, а затем использую File.Move, чтобы переименовать их в .xml. Моя проблема заключается в запуске тысяч файлов всего за пару минут. Я успешно написал "12345.tmp", но при File.Move("12345.tmp", "12345.xml") я получаю:
Исключение: процесс не может получить доступ к файлу, поскольку он используется другим процессом.
Меня не волнуют имена файлов, поэтому я повторяю попытку File.Move("12345.tmp", "12346.xml"):
Исключение: Исключение: не удалось найти файл «12345.tmp».
Удаляет ли File.Move() исходный файл, если при переименовании файла возникает ошибка? Почему? Как обеспечить успешное переименование файла или его сохранение без изменений?
Подробнее здесь: https://stackoverflow.com/questions/519 ... oexception