2012-05-23 2 views
0

파일의 가상 경로를 지정하고 싶지만 그렇게 할 수 없습니다. 여기 ASP.NET MVC에서 파일 경로를 지정하는 방법

내 코드입니다 :

int Course_Id = 1; 
int PortfolioID=1; 
int ChandidateID=1; 

string filepath = Server.MapPath("~/ePortfolio/PortFolioContent/" + Course_Id + "/Assignments/Exhb_" + item.PortfolioID + "_" + item.ChandidateID + ".jpg"); 

if(System.IO.File.Exists((filepath))) 
{        
    ViewBag.Thumbnail = filepath; 
} 

나는 다른 경로에서 데이터를 가져 오는되고는 Server.MapPath 사용하는 경우 :
내 원래의 경로입니다 :
E : \ HOBBYHOMES (E-포트폴리오) \ HobbyHomesWebApp \ e- 포트폴리오 \ PortFolioContent 1 개 \ 할당
\ 는하지만,이 경로를
E 복용 : \ HOBBYHOMES (E-포트폴리오) \ HobbyHomesWebApp는 \ ActivityPostin 이미지 \ \ e- 포트폴리오가 \ PortFolioContent 1 \ 할당 \ Exhb_1_1.jpg
\ I가 있어요 언더가 아닌 tanding이 so.Please이

+1

나는 당신에게 좋은 해결책이 없다. 그러나 지금까지 시도한 것은 효과가 없다. 필자는 Windows에서 파일 경로에서 ~로 확장 할 수 없다고 생각합니다. 일부 명령 셸은 파일 시스템 자체가 아니라 파일 셸을 사용합니다. '..'는 현재 작업 디렉토리 (실행중인 실행 파일의 디렉토리 또는 동등하게 쓸모없는 디렉토리)를 기반으로합니다. – SirPentor

답변

2

도움이 일하는 이유 :

Path.Combine(Server.MapPath("~/"),("ePortfolio\\PortFolioContent\\" + Course_Id + "\\Assignments\\Exhb_" + item.PortfolioID + "_" + item.ChandidateID + ".jpg")); 

이론적으로 이전에 실패한 것과 같은 대답이됩니다. 실제로는 완전히 다른 답변을 얻을 수 있습니다.

또한 최근의 질문이 있습니다.이 질문은 Server.MapPath ("~/.. 등 ..")가 다시 작성된 요청 경로에서 잘못 표시되는 것을 강조합니다. 이 경로를 형성하려는 요청을 다시 작성하고 있습니까?

+0

어이 4x 답장 안녕하세요 .. 내가 UR 방법을 사용하지만 여전히 prob는 nt resolved.Please 내가 내 질문을 업데이 트를 참조하십시오. – user1274646

0

당신은 Url.Content @ 사용할 수있는 시도 나에게

+0

안녕하세요^4 d 답장하지만이 경로와 문제가 wats .. 내가이 경로를 사용하도록 바인딩 오전에만 – user1274646

+0

내가 hav 내 질문을 업데이 트를 참조하십시오. – user1274646

+0

당신은 다음과 같은 경로를 문자열 파일 경로 =는 Server.MapPath를 (예정 "~/e- 포트폴리오/e- 포트폴리오/PortFolioContent /"+ Course_ID에 + "/ 할당/Exhb_"+ PortfolioID + "_" + ChandidateID + ".jpg"); 1) E : \ HOBBYHOMES (E-포트폴리오) \ HobbyHomesWebApp \ e- 포트폴리오 \ PortFolioContent \ 1 개 \ 할당 2) E : \ HOBBYHOMES (E-포트폴리오) \ HobbyHomesWebApp \ ActivityPostin 이미지 \ \ e- 포트폴리오 \ PortFolioContent 1 \ \ 할당 \ Exhb_1_1.jpg 내가 폴더 전자 포트폴리오를 볼 수 없습니다. 질문을 다시 업데이트하고 정확한 경로를 알려주시겠습니까? 나 한테는 두 번째 경로를 원하고 첫 번째 경로를 얻고 싶습니다. –

0

이 같은 일을 시도 ("~/컨텐츠/이미지/YourImageName.png") string filepath = Server.MapPath("~/... ...jpg");

+0

Nopes m NT는 이것을 다시 부른다. string filepath = Server.MapPath ("~/ePortfolio/PortFolioContent/"+ Course_Id +"/ Assignments/Exhb_ "+ item.PortfolioID +"_ "+ item.ChandidateID +".jpg "); 이전에 내가 아아 NT가 문제가 될 수 있도록 그것이 실행되고 있던 폴더에 배치.그래서 지금 나는 그것을 작동하게했다 :) – user1274646

관련 문제