2011-05-10 10 views
1

다음과 같은 문제점이 있습니다. 온라인으로 Excel 파일을 업로드 할 클라이언트가 있습니다. 이 Excel 파일을 openrowset 명령을 사용하여 수행 할 수있는 데이터베이스 테이블로 가져와야합니다. 가져온 후에는 GridView을 사용하여 데이터를 표시 할 수 있습니다.파일 업로드는 서버에서 어떻게 작동합니까?

지금은 http://www.codeproject.com/KB/books/ASPNET20FileUpload.aspxhttp://msdn.microsoft.com/en-us/library/aa478971.aspx을 언급했지만 둘 다 업로드 폴더 (대상)는 하드 코드되어 있습니다. 파일의 대상이 서버에 있음을 반영하여이를 어떻게 변경할 수 있습니까? 그리고 이것이 완료되면 openrowset을 사용하여 Excel fie의 내용을 추출 할 수 있습니까?

또한 배포하기 전에 내 컴퓨터에서 전체 프로세스를 에뮬레이트 할 수 있습니까?

답변

2

당신은 .. 서버 등에

FileUpload1.SaveAs(Server.MapPath("~/temp/xyz.xlsx")); 

을 파일을 저장 한 후 설정할 수 있습니다 연결 문자열과 같은에서 .. 그

connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Server.MapPath("~/temp/xyz.xlsx"); Extended Properties=Excel 12.0;";

+0

@Muhammad 악 타르 : 감사합니다! :) 나는'~/temp/xyz.xlsx'가 파일의 물리적 인 경로를 가리키는 것 같아요, 아니면 다른 방향입니까? 즉, 파일이 업로드되도록 지정된 서버의 폴더를 나타냅니다. 내가 이대로 새로운 것을 가르쳐주세요. 감사! :) – CodingInCircles

+1

로컬 시스템이나 서버에서 실행되는 응용 프로그램과 상관없이 항상 응용 프로그램의 루트/임시 디렉토리에 파일을 저장합니다. ~ 기호, 루트 폴더 및 Server.mappath, 절대 경로를 찾습니다 찾습니다. –

+0

@Muhammad Akhtar : 명확히 해주셔서 감사합니다! :) 그리고 대답에 감사드립니다. – CodingInCircles

관련 문제