2014-11-14 5 views
0

내 컴퓨터에서 실행하면 문제가 있습니다. 웹 응용 프로그램 (ASP.NET)이 서버 컴퓨터에 설치되어 있습니다 (로컬로) 제대로 작동하면 보고서가 내 컴퓨터에서 생성됩니다.로컬 컴퓨터 저장 보고서/ASP.NET을 사용하여 로컬 컴퓨터 경로 지정 방법 C#

그러나 서버에 설치하고 서버에서 응용 프로그램에 액세스 할 때 보고서를 생성하려고했는데 (버튼을 사용하여) 내 컴퓨터에 없었지만 서버 컴퓨터에 저장했습니다. 나는 내 로컬 컴퓨터에서 내 보고서를 저장하려면 어떻게해야

string folderDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments); 

생성 된 내 보고서 (.PDF)의 저장 위치를 ​​
이는/:

나는 현재 내 파일 저장 위치로이 경로를 사용하고 있습니다 웹 응용 프로그램이 서버에만 설치되어있는 경우?

btw. "iTextSharp"를 파일 내보내기를위한 내 PDF Exporter/Generator 및 System.IO로 사용하고 있습니다.

감사합니다. 좋은 하루 되세요!

답변

0

이 PDF 파일을 다운로드해야합니다. 1. 링크 2.를 사용하십시오. 그렇지 않으면 서버 코드가 파일 결과를 직접 반환합니다.

+0

사용자에게 "다른 이름으로 저장"대화 상자를 표시하거나 파일을 저장하려는 위치로 직접 다운로드하는 방법이 있습니까? 또는 이렇게해도 서버 시스템에 여전히 저장됩니까? –

0

더 많은 사용자가 PDF를 만들수록 더 많은 디스크 공간이 필요하거나 파일을 정리해야하기 때문에 문서를 서버에 파일로 저장하면 안됩니다. 그들이 서버가 된 후).

메모리 스트림에서 PDF를 만든 다음 브라우저에서 해당 스트림을 제공하는 것이 훨씬 좋습니다. 예를 들어 How to return PDF to browser in MVC?을 참조하십시오.

Response.AppendHeader("content-disposition", "attachment; filename=yourfile.pdf"); 

참고 값 attachment : 당신은 사용자가 "다른 이름으로 저장"대화 상자를 표시 할 경우

, 당신은 여분의 HTTP 헤더를 정의해야합니다. 기본적으로이 값은 inline이며,이 경우 PDF가 브라우저에 표시됩니다. 이것을 attachment으로 변경하면 브라우저가 "다른 이름으로 저장"대화 상자를 엽니 다.