在浏览器中单击按钮时未打开ODT文件。如何使用C#代码打开ODT文件?

时间:2016-12-16 11:03:20

标签: c# asp.net openoffice-writer

当我单击浏览器中的图像按钮时,我需要开发一个Web应用程序来打开ODT文件。下面是我用来点击按钮打开文件的代码。它适用于Word文档,但它不适用于Open Office文档。我怎么能这样做?

<asp:ImageButton id="imagebutton1" runat="server"
    AlternateText="ImageButton 1"
    Image
    ImageUrl="images/pict.jpg"
    OnClick="imagebutton1_Click"/>

protected void imagebutton1_Click(object sender, ImageClickEventArgs e)
{
    Response.Clear();
    Response.ContentType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document";
    Response.AddHeader("Content-disposition", "inline; filename=TestDoc.docx");
    String path = Server.MapPath("TestDoc.docx");
    Response.WriteFile(path);
    Response.End(); 
}

1 个答案:

答案 0 :(得分:0)

查看文件MIME类型的OpenOffice参考,看起来您在设置ContentType属性时发回的MIME类型是错误的。

在他们的参考中,他们将ODT MIME类型列为application/vnd.oasis.opendocument.text

我建议您在Response对象中设置此MIME类型。

来源:http://www.openoffice.org/framework/documentation/mimetypes/mimetypes.html