가상 디렉터리를 다른 이름으로 폴더에 연결할 수 있다는 것을 알고 있으므로 어떻게 가상 디렉터리의 실제 경로를 얻을 수 있습니까?가상 디렉터리 실제 경로를 얻는 방법
나는 HttpContext.Current.server.MapPath로 시도해 왔지만 디렉토리가 존재하지 않거나 다른 이름으로 존재하더라도 매개 변수로 전달하는 경로와 물리 경로를 반환합니다.
Exemple :
C : \ blabla \ 사이트 \ 응용 프로그램 1 \ Imaageesss - 디스크에
응용 프로그램 1 \ 이미지
(ISS 내 virutal 디렉토리에서)하지만 난에 MapPath를 할 경우 "/ Images"라고 입력하면 C : \ blabla \ Sites \ Application1 \ Imaageesss하지만 C : \ inetpub \ wwwroot \ 이미지는 실제 디렉토리가 연결되지 않습니다.
아래의 모든 대답은 문제를 해결하지 못합니다. MapPath가 가상 IIS 디렉토리인지 아닌지 충분히 확인할 수는 없다고 가정합니다. 단지 당신이 제공하는 경로에 응용 프로그램 루트 경로를 추가합니다. 불행하게도 나는 집중적으로 웹을 검색 한 후에도이를위한 해결책을 찾을 수 없었다. – needfulthing
방법을 찾았습니다. 아래 답변을 참조하십시오. – needfulthing
두 가지 상황에서 비슷한 문제가있었습니다. 하나의 상황에서'Server.MapPath ("/ Images/image.jpg")'대신'Server.MapPath ("/ Application1/Images/image.jpg")'를 호출해야하고, 내 응용 프로그램 내 가상 디렉터리 이름을 잘못 참조했습니다. 나는 이러한 일들을 할 때까지 OP가 경험했던 것과 같은 결과를 얻었습니다. 그냥 내가 추가 할 줄 알았는데 ... – ionalchemist