我的gridview中有一个链接按钮,一旦用户单击该链接按钮,我需要打开一个word文档(文档存储在服务器中的路径就像这样c:/abc/doc/abc1.doc)所以现在我应该让用户下载该文档以供查看。
如何实现它 谢谢
答案 0 :(得分:1)
您应该考虑使用TransmitFile方法而不是WriteFile方法。对于你正在做的事情,它更多efficient。
protected void btnPurchaseOrderOpen_Click(object sender, EventArgs e)
{
Response.Clear();
Response.ContentType = "application/pdf";
Response.AddHeader("content-disposition", "attachment;filename=one.pdf");
Response.TransmitFile(@"c:\test\one.pdf");
Response.End();
}
答案 1 :(得分:0)
海
在项目中添加对word对象库的引用。 然后试试这个
Microsoft.Office.Interop.Word.Application app = new Microsoft.Office.Interop.Word.Application();
app.Visible = true;
object visible = true;
object fileName = @"C:\temp\sample.doc";
object optional = System.Type.Missing;
Microsoft.Office.Interop.Word.Document doc = app.Documents.Open(ref fileName, ref optional, ref
optional, ref optional, ref optional, ref optional, ref optional, ref
optional, ref optional, ref optional,ref optional,ref optional,ref optional,ref optional,ref optional,ref optional);
如果你想要网页浏览器,只需看看saar的答案
答案 2 :(得分:0)
asp.net,这意味着你想在网络浏览器中打开文档。这里是简单的代码片段
string fPath = @"c:/abc/doc/abc1.doc";
FileInfo myDoc = new FileInfo(fPath);
Response.Clear();
Response.ContentType = "Application/msword";
Response.AddHeader("content-disposition", "attachment;filename=" + myDoc.Name);
Response.AddHeader("Content-Length", myDoc.Length.ToString());
Response.ContentType = "application/octet-stream";
Response.WriteFile(myDoc.FullName);
Response.End();