2017-12-08 1 views

답변

0

당신은 정기적를 설정해야합니다을 예를 들어 파일 시스템 경로 "C : \ temp \ myfolder \". 또는를 사용하십시오. 대신 ~와 백 슬래시의 : NReco 당신에게 바이트 배열 또는 스트림을 제공 할 수있는 경우

htmlToPdf.PdfToolPath = ".\\files\\"; 

대신 파일의이 선호하고 직접 반환해야합니다.

UPDATE :

NReco 당신이해야 할 모든 문서에 살펴 takeing 후 다음입니다 :

var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter();      
htmlToPdf.PdfToolPath = "<CORRECT_PATH_FOR_TOOL>";       
var output = htmlToPdf.GeneratePdf(template); 
System.IO.File.WriteAllBytes("<OUTPUT_PATH>", output); 

이것은 OUTPUT_PATH에서 PDF를 작성해야합니다.

+0

htmlToPdf.PdfToolPath = ". \\ files \\"; 오류가 발생했습니다 '. \ 파일 \'경로에 대한 액세스가 거부되었습니다. – Gobind

+0

나는 Generatepdf 메소드 htmlToPdf.GeneratePdf (템플릿, "", "~/files /")의 오버로드를 시도했다. 하지만 지금은 오류가있어 : PDF를 생성 할 수 없습니다 : 알 수없는 오류로 인해 코드 1로 종료하십시오. (종료 코드 : 1) 나는 내 HTML 템플릿에 외부 참조가 없기 때문에. – Gobind

+0

폴더가 있습니까? IIS 또는 IIS Express에서 소프트웨어를 디버깅하고 있습니까? 사용자 액세스 권한을 확인하십시오 - 테스트를 위해 "모든 사람"에게 쓰기 권한으로 설정하십시오 – OlafW

0
@OlaFW thanx for your effort. 
I got my answer. 

var pdfBytes = htmlToPdf.GeneratePdf(template); 
    string filePath = "/files/Myfile.pdf"; 
    string Url = System.Web.Hosting.HostingEnvironment.MapPath(filePath);     
System.IO.File.WriteAllBytes(Url, pdfBytes); 
관련 문제