내가 원격 네트워크 경로로 내 C# 코드에 의해 파일 생성 (Excel 파일)을 복사하려고를 찾을 수없는 네트워크 경로를 던지는 나는 다음과 같이 접근해야합니다 :파일 복사가 간헐적으로
string folder = "\\\\testing-path\\Audit\\Reports";
if (!(Directory.Exists(folder + "\\" + DateTime.Now.ToString("MM-dd-yyyy") + "\\" + "Audit")))
{
Directory.CreateDirectory(folder + "\\" + DateTime.Now.ToString("MM-dd-yyyy") + "\\" + "Audit");
}
folder = folder + "\\" + DateTime.Now.ToString("MM-dd-yyyy") + "\\" + "Audit";
if (File.Exists(folder + "\\Audit- " + fname + ".xlsx"))
{
File.Delete(folder + "\\Audit- " + fname + ".xlsx");
}
string fileName = folder + "\\Audit- " + fname + ".xlsx";
wb.SaveAs(fileName,
Excel.XlFileFormat.xlWorkbookDefault, null, null,
false, false, Excel.XlSaveAsAccessMode.xlNoChange,
null, null, null, null, null);
을 이 코드는 완벽하게 8/10 번 작동하고 네트워크 오류 (네트워크 경로를 찾을 수 없음)를 2 번 던졌습니다. 원격 경로에서이 오류가 발생하면이 코드를 실행하는 컴퓨터에서 run 명령을 사용하여 위의 원격 경로를 열고 정상적으로 액세스 할 수 있습니다. 수동으로 열린 폴더를 닫고 코드를 다시 실행하면 문제가 해결됩니다. 무엇이 문제 일 수 있습니까? 내가 여기서 뭔가 잘못하고있는거야?
추신 : 나는 또한 Excel 파일을 바탕 화면에 저장하려고 시도한 다음 File.Copy
을 사용하고이 간헐적 인 동작을 변경하지 않았습니다.
안녕하세요 - 혹시 해결책을 찾거나 원인습니까? 프로덕션 시스템에서도 비슷한 문제가 발생하지만 거의 발생하지는 않습니다. – MorganTiley
나는 해결책을 찾았지만 해결 방법은 폴더를 열고 닫은 다음 위의 논리를 수행하는 것입니다. – TRR