为什么在 ASP.NET MVC 应用程序中通过 Action 打开文件在 IE 和 Firefox 中有效,但在 chrome 中无效?
Why opening a file through Action in ASP.NET MVC application works in IE and Firefox but not in chrome?
我试图在 View 中打开一个文件而不是下载 it.The 代码在 IE 和 Firefox 中工作正常,但它在 Chrome 中下载文件而不是打开它。
这是我的代码。
//OpenWord Action
string filePath = @"G:\WordDemo\DocXExample.doc";
var doc = DocX.Create(fileName)
doc.InsertParagraph("This is my first paragraph"+person.FirstName+" "+person.LastName);
doc.Save();
string fileName = "DocXExample.doc";
byte[] fileData = System.IO.File.ReadAllBytes(filePath);
string contentType = MimeMapping.GetMimeMapping(filePath);
string mimeType = "application/msword";
Response.AppendHeader("Content-Disposition", "inline; filename=" + fileName);
return File(fileData, mimeType);
欢迎任何帮助和建议。
它不能跨设备和客户端一致地工作,因为它依赖于为客户端安装的插件。
试试这个。
在您的站点中托管 word 文档,以便可以通过 say http://www.example.com/path/mydocument.doc
下载
在您的视图中添加此 iframe
<iframe src="http://docs.google.com/gview?url=http://www.example.com/path/mydocument.doc&embedded=true"></iframe>
我试图在 View 中打开一个文件而不是下载 it.The 代码在 IE 和 Firefox 中工作正常,但它在 Chrome 中下载文件而不是打开它。
这是我的代码。
//OpenWord Action
string filePath = @"G:\WordDemo\DocXExample.doc";
var doc = DocX.Create(fileName)
doc.InsertParagraph("This is my first paragraph"+person.FirstName+" "+person.LastName);
doc.Save();
string fileName = "DocXExample.doc";
byte[] fileData = System.IO.File.ReadAllBytes(filePath);
string contentType = MimeMapping.GetMimeMapping(filePath);
string mimeType = "application/msword";
Response.AppendHeader("Content-Disposition", "inline; filename=" + fileName);
return File(fileData, mimeType);
欢迎任何帮助和建议。
它不能跨设备和客户端一致地工作,因为它依赖于为客户端安装的插件。
试试这个。
在您的站点中托管 word 文档,以便可以通过 say http://www.example.com/path/mydocument.doc
下载在您的视图中添加此 iframe
<iframe src="http://docs.google.com/gview?url=http://www.example.com/path/mydocument.doc&embedded=true"></iframe>