2017-11-20 16 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

アップデートで参照されている正しい1つを持っています - 私はエミュレーション "ドキュメントモード"を8に変更するとIEで期待どおりに動作します。これは私を夢中にしています! – Mike

答えて

0

は、それがMIMEや応答はなかったが判明します。 ContentTypeの問題。 MVCアプリケーションとして、私はモーダルでFileResultを開こうとしていました。他のボタンがこのようにしてコンテンツを表示するので、コピー/貼り付けが失敗します。 Word文書ではありません!

関連する問題