2010-05-26 5 views
2

PDF 파일을 렌더링하는 데 응용 프로그램 페이지가 필요한 사용자 지정 웹 파트를 만들고 있습니다.PDF 표시 - 응용 프로그램 페이지 SharePoint

나는 현재 다음 링크를 사용하고 http://support.microsoft.com/kb/306654

그것은 ASP.NET에서 잘 작동하지만 SharePoint의 빈 페이지를 제공합니다.

여기 코드는 다음과 같습니다 ...

 Response.ClearContent(); 
     Response.ClearHeaders(); 
     //Set the appropriate ContentType. 
     Response.ContentType = "Application/pdf"; 
     //Get the physical path to the file. 
     string FilePath = MapPath("Test.pdf"); 
     //Write the file directly to the HTTP content output stream. 
     Response.WriteFile(FilePath); 
     Response.Flush(); 
     Response.End(); 

은 나를 미치게 만들고, 지난 몇 시간 동안 그것을에서 작업 아이디어 (PDF 파일은 같은 디렉토리에)?

+0

문제는 다음과 같을 수 있습니다. string FilePath = MapPath ("Test.pdf"); . 공유 위치에서 실행 중일 때 파일이 존재합니까? –

+0

@Raj : 그건 문제가 아닙니다. 파일이 같은 폴더에 있습니다. 또한 필자는 ASP.NET에서 작동하는 Byte 배열을 사용하여 PDF를 작성하는 경우에도 동일한 문제에 직면하고 있습니다. – spt3210

+0

ASP.NET에서 작동하지만 웹 파트가 Sharepoint에서도 실행되는 것을 알고 있습니까? 웹 파트에서 모든 코드를 제거하고 Response.Write ("hello")를 입력하십시오. 라인이 실행됩니까? –

답변

1

몇 가지 아이디어 : 파일은 SharePoint 디렉토리에있는 경우

  1. , 왜 그냥에 대한 URL로 리디렉션하지?

  2. HTTP 트래픽을보기 위해 피들러 (Firebug)를 사용하는 경우 콘텐츠 유형이 변경된 것으로 보입니까? 내용은 무엇입니까? (PDF 파일입니까?)

  3. SharePoint와 ASP.NET의 주요 차이점은 페이지 수명주기가 약간 다르다는 것과 보안 모델이 약간 다르다는 것입니다 . Reponse.End()이 SharePoint에서 다른 점이 없는지 확인하는 방법을 살펴볼 수 있습니다. 자세한 로깅에서 SharePoint를 실행 한 다음 SharePoint dll에서 .NET Reflector를 사용하여 로그를 가이드로 사용하여이 문제를 처리하는 데 이상한 방법이 있는지 확인할 수 있습니다. SharePoint dll에는 꽤 자유로운 로그 호출이 있습니다. 더 많은 정보는 여기에 있습니다 : http://www.andrewconnell.com/blog/archive/2008/06/11/SharePoint-Debugging-and-Logging-Tips-and-Tricks.aspx

  4. PDF를 래스터 화하고 페이지에 인라인으로 표시 했습니까? 이는 회사에서 PDF 및 기타 문서를 SharePoint (Vizit)로 보는 프로젝트에서 수행하는 작업입니다. 파일을 읽는 문제는 여전히 해결해야하지만 PDF로 응답하는 대신 PNG로 응답하고 <img> 태그 안에 요청하십시오.

+0

답변 주셔서 감사합니다. 나는 주말에 이것을 점검하고 당신을 업데이트 할 것입니다. 디버깅 옵션을 지금 검사 중입니다. – spt3210

+0

문제가 PDf 설치가 손상된 것으로 판명되었습니다. 당신의 도움을 주셔서 감사합니다. – spt3210

관련 문제