2011-02-18 1 views
30

예상 :이는 Server.MapPath 실제 경로가 주어진 가상 경로 내가 코드 줄 사용하고

var files = Directory.GetFiles(Server.MapPath("E:\\ftproot\\sales")); 

폴더에있는 파일을 찾을 수 그러나 내가 말하는 오류 메시지를 그

"실제 경로는 있지만 가상 경로는 입니다."

C#에서 System.IO를 사용할만큼 충분히 새롭습니까? 이렇게하려면 실제 경로를 입력 할 수 있는지 궁금한가요? 당신이 이미 알고있는 경우

답변

61

이 폴더는 다음과 같습니다 E : \ 만 ~/폴더처럼 상대 가상 경로가있을 경우 판매 \ 다음이 마지막이 필요하다는 Server.MapPath를 사용할 필요가 없습니다 Ftproot에/폴더 1하고 디스크의 실제 경로를 알고 싶어 ... 그것을위한

+0

덕분에, 나는 인식하지 않았다. 내가 쓸만한 것에 대한 제안이 있니? – 109221793

+0

그것이 달려있어, 왜 E : \\ ftproot \\ 판매가 하드 코딩 되었습니까? 고정되어 있고 단지 GetFiles ("E : \\ ftproot \\ sales") 만하면 ... 어쨌든 web.config에서 그 경로를 사용하므로 주위의 마법 문자열을 변경하지 않고도 쉽게 찾을 수 있습니다. 재건 ... –

+0

감사합니다 @DavidePiras, 이것은 나를 위해 유용합니다;) –

5
var files = Directory.GetFiles(@"E:\ftproot\sales");