2011-10-19 4 views
3

데이터베이스에 저장된 파일을 여는 가장 좋은 방법을 찾는데 약간의 문제가 있습니다. 파일은 데이터베이스의 nvarbinary 필드에 바이트 배열로 저장됩니다. 현재 파일을 열려고 할 때 ASP.NET 웹 페이지를 사용하여 변수를 전달하고 파일 스트림을 페이지에 씁니다. Silverlight 응용 프로그램의 브라우저 버전을 사용할 때 제대로 작동하지만 브라우저에서 DOM에 액세스 할 수 없기 때문에 브라우저 창을 열 수 없습니다.브라우저에서 Silverlight의 PDF 및 기타 문서 열기

브라우저 창을 호출하지 않고 어떻게 Silightright에서 bytearray를 열 수 있습니까? bytearray 및 파일 형식을 Silverlight 앱에 아무런 문제없이 전달할 수 있습니다. 나는 그것을 가지고 있으면 그것을 어떻게 표시 해야할지 모르겠다. ..

고마워!

답변

3

완전 신뢰 기능을 사용하고 Mac이 아닌 다른 Windows를 대상으로하는 경우 파일을 디스크 (격리 된 저장소 또는 내 문서)에 먼저 기록한 다음 WScript.Shell OS에서 파일을 열도록하는 COM 개체입니다.

파일로 바이트 스트림을 저장하고 파일 위치를 한 후

을 수행 할 수 있습니다 : 당신이 기존의 ASP 페이지를 활용하려는 경우 shell.Run과에 URL을 전달할 수 있습니다

using (dynamic shell = AutomationFactory.CreateObject("WScript.Shell")) 
{ 
    shell.Run(fileLocation); //works similar to start -> run -> filename 
} 

OS는 사용자의 기본 브라우저를 사용하여 해당 페이지를 엽니 다.

Mac에서는 파일을 사용자 디렉토리에 저장하고 수동으로 파인더로 탐색 한 다음 두 번 클릭하면됩니다.