2014-02-05 2 views
0

앵커 태그 클릭시 새 탭에서 doc 파일이나 pdf 파일을 열어야합니다. 나는 MVC 4.0을 사용하고있다. 브라우저는 새 탭에서 파일을 열려고하지만 그 전에는 다운로드 화면/팝업이 열리고 파일이 새 tab.N에서 열리도록 제한합니다. 인터넷 및 stackoverflow 응답에서 target = _blank를 작성했지만 어디에 있는지 확인했습니다 나를 위해 일하지 않습니다.브라우저의 새 탭에서 doc 파일 또는 PDf 파일 열기

다음과 같이 앵커 링크를 정의했습니다. 나는 나와 파일 이름을 가지고 있는데 그것은 datetime.now.tofiletime()을 사용하여 파일 이름을 만들기 때문에 고유 할 것이다. 그래서, 나는 나의 파일 이름을 직접 주었다. 하지만 먼저 파일이 목적 또한 아래의 코드 서버 also.Can 문서 파일이나 PDF 파일이나 이미지 인 경우 감지가 안내하십시오 :

<a href="/MyController/ViewDocument?FileName=145357456705009879.docx" target="_blank" title="View Document" style="display:block;" class="ViewDetailClass"> </a> 

가 그럼 난 MyController에 클래스의 조치 방법 아래에 있습니다.

public ActionResult ViewDocument(string FileName) 
    { 
     try 
     { 
      var FullPath = Path.Combine(Server.MapPath("~/Content/Resources"), FileName); 
      if (!System.IO.File.Exists(FullPath)) 
      { 
       return HttpNotFound(); 
      } 
      var contentType = "text/plain"; 
      return File(FullPath, contentType, Path.GetFileName(FullPath)); 
     } 
     catch 
     { 
     } 
     return File(new byte[] { }, "text/plain"); 
    } 

답변

1

이것은 클라이언트의 설정에 따라 달라집니다. docx 파일은 브라우저에서 표시 할 수 없기 때문에 거의 항상 다운로드됩니다. PDF 파일의 경우에는 다릅니다. 크롬에서는 브라우저 내부에서 표준을 열지 만, 특별히 그렇게하지 말고 다른 응용 프로그램에서 열 수는 있습니다.

이들은 서버에서 제어 할 수없는 클라이언트 측의 설정입니다. 사용자의 기호에 따라 정상적으로 느껴지기 때문에 좋습니다.

+0

그러나 Pdf도 열리지 않습니다. 제 컨트롤러 코드가 파일을 여는 것이 좋다면 알려주십시오. 그렇지 않다면 나에게 몇 가지 예를 들어주세요. – Sweetie

+0

Pdf가 현재 작동 중입니다. 이미지 및 문서 파일은 여전히 ​​작동하지 않습니다. – Sweetie

관련 문제