2009-03-31 3 views
0

그래서 문제의 절반은 고전적인 ASP로 작성되었으며 절반은 asp.net에 있습니다. .NET half와 공유해야하는 고전적인 ASP 코드에 의해 생성 된 PDF 파일 (메모리에 있음)이 있습니다. FS 또는 DB에 PDF를 저장하는 것을 생각했는데, 대부분의 사용자는 IO에 저장하는 데 매우 느린 프로세스를 거쳐야하므로 권장하지 않았을 것입니다. 그런 다음 수동으로 정리해야합니다. - 불필요하게 더 많은 병목과 실패 지점을 만듭니다.클래식 ASP :. NET 페이지에 PDF 파일의 내용으로 게시

Server.Transfer 또는 Microsoft.XMLHTTP 개체를 사용하여 고전적인 asp 페이지에서 .NET으로 게시물을 모방 한 것으로 생각했지만 실제로는 클라이언트 쪽의 URL을 가리키고 싶지 않으므로 정확하게 맞지 않습니다. .NET aspx 페이지. 그렇다면 기본 ASP에서 PDF 파일이 포함 된 .NET 페이지로 POST를 제작하는 간단한 방법이 있습니까?

의견이나 제안 사항에 대해 미리 감사드립니다.

답변

1
다소 해킹의

,하지만 ...

당신이 PDF 파일의 데이터로 채울 필드 클래식 ASP에서 양식을 만듭니다. 폼의 동작은 ASP.NET 페이지입니다. 당신은 양식 필드 (Base64로 또는 무언가)에 쓰기 전에 바이너리 PDF 데이터를 인코딩해야 할 수도 있습니다

<body onload="pdfsenderform.submit()"> 
    <form name="pdfsenderform" action="pdf.aspx" method="post"> 
     <input type="hidden" name="pdffiledata" value="<%...output your PDF data here...%>" /> 
    </form> 
</body> 

:처럼 뭔가.

+0

나는 이런 식으로 끝내었다. 그것은 여분의 대역폭을 필요로하지만 유지 보수의 어려움은 최소화됩니다. – Haoest

+0

아야 ... 그래서, 디스크에 쓰는 대신에 클라이언트에게 라운드 트립하는 것일까 요? 나는 그것이 더 빠를 것 인 많은 시나리오를 생각할 수 없다. ... –

+0

그래, 그것은 꽤 귀여웠다. – squillman

0

아마도 PHP 나 DB가 ASP.NET과 ASP 상호 작용의 어려움을 고려해야합니다. 그것은 내 "최소한의 저항의 길"입니다.

0

디스크에 기록하고 쿠키 또는 쿼리 문자열에 파일 이름을 저장하고 사용자에게 Response.Redirect를 보냅니다. "충분히 빠르며"TCP를 통해 액세스 할 수있는 최소 공통 분모의 State Server를 작성하는 것보다 훨씬 쉽습니다. 이는 내가 생각할 수있는 유일한 메모리 방식입니다.