Verwenden eines Speicherstreams & der richtige MIME-Typ mit Response.ContentType. Sonderzeichen werden angezeigt, anstatt zu einem Öffnen eines Word-Dokuments aufzufordern. Ich verwende:Beim Versuch, DOCX in einem Browser zu öffnen, Jibberish
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();
}
Hier ist ein Beispiel für die Ausgabe ich jetzt bekommen, anstatt eine Aufforderung, ein Word-Dokument zu öffnen:
Siehe [Was ist ein korrekter MIME-Typ für docx, pptx usw.?] (Https://stackoverflow.com/questions/4212861). DocX die Bibliothek diktiert nicht, was der richtige MIME-Typ ist. – mason
Ja, ich habe die richtige in Response.ContentType – Mike
Update - es funktioniert nur wie erwartet in IE, wenn ich die Emulation "Document Mode" auf 8 ändern. Irgendwelche Ideen, das macht mich verrückt! – Mike