2017-11-20 8 views
0

메모리 스트림을 사용합니다. & MIME 유형이 Response.ContentType입니다. Word 문서를 여는 대신 특수 문자가 표시됩니다. 내가 사용하고 있습니다 :브라우저에서 DOCX를 열려고 할 때 이상한 느낌을받습니다.

  using (MemoryStream ms = new MemoryStream()) 
     { 
      doc.SaveAs(ms); 

      Response.Clear(); 
      Response.AddHeader("Content-Disposition", string.Format("attachment; filename={0}", fileName)); 
      Response.ContentType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; 
      ms.WriteTo(Response.OutputStream); 
      Response.End(); 
     } 

가 여기에 내가 얻을 출력 지금보다는 Word 문서를 열 수 프롬프트의 예 :

enter image description here

+0

[docx, pptx 등의 올바른 MIME 유형은 무엇입니까?] (https://stackoverflow.com/questions/4212861)를 참조하십시오. DocX 라이브러리는 올바른 MIME 형식이 무엇인지 지시하지 않습니다. – mason

+0

예, Response.ContentType에 참조 된 올바른 하나가 있습니다. – Mike

+0

업데이트 - 에뮬레이션 "문서 모드"를 8로 변경하면 IE에서 예상대로 작동합니다. 어떤 아이디어라도 나에게 미치고 있습니다! – Mike

답변

0

그것이 MIME 또는 응답하지 않았다 밝혀졌습니다. ContentType 문제. MVC 응용 프로그램이기 때문에 FileResult를 모달로 열려고했습니다. 복사/붙여 넣기가 실패합니다. 다른 버튼이 이러한 방식으로 작업하여 내용을 표시합니다. Word 문서가 아닙니다!

관련 문제