2012-12-20 2 views
3

에 pdf 파일을 저장ASP.NET -이 코드를 사용하여 PDF 파일을 반환하는 aspx 페이지가 서버

HttpContext.Current.Response.Clear() 
HttpContext.Current.Response.ContentType = "application/pdf" 
HttpContext.Current.Response.AddHeader("Content-disposition", "attachment; filename=Order-" & Request("OrderNo") & ".pdf") 
HttpContext.Current.Response.BinaryWrite(pdfContent) 
HttpContext.Current.Response.End() 

은 무엇 수정 파일이 하드에 저장되도록 코드로 수행해야을 서버에서 구동합니까? 나는 BinaryWrite가 다른 것으로 대체되어야한다고 생각하지만, 뭐라구?

도움에 매우 감사드립니다.

답변

4

그냥 경로 등 때문에 File.WriteAllBytes 방법 매개 변수로 pdfcontent를 지정 대상 디렉토리에 쓸 수있는 충분한 권한이있는 사용자로 로그인하십시오. 그러나 기본적으로 웹 응용 프로그램의 하위 디렉토리에 쓸 수 있어야합니다.

+0

고맙습니다. 위 코드에 파일 이름을 추가해야했습니다. – user1898347

2

File.WriteAllBytes을 호출하여 디스크에 바이너리 데이터를 쓸 수 있습니다.

0

pdfContent의 바이트를 파일로 덤프하려는 경우 IO.File.WriteAllBytes("{A path}",pdfContent)을 사용해야합니다. 당신이 당신의 응용 프로그램에서 실행되는 응용 프로그램 풀을 구성하지 않는 한 로컬 응용 프로그램 디렉토리 외부의 내용을 저장할 수 없습니다 일반적으로

File.WriteAllBytes(Server.MapPath("~/SubdirectoryInCurrentWebApp"),pdfContent); 

당신 :

관련 문제