2012-03-15 161 views
10

在我的应用程序中,我在服务器上保留了一些文件,并使它们可用于下载某些业务逻辑,所有其他文件类型都被下载,但.msg(Outlook消息)文件不会被下载给出错误: “ ”404 - 未找到文件或目录。您正在查找的资源可能已被删除,名称已更改或暂时不可用。“ 图像,.docx,.txt所有其他文件运行良好。 该页面是在ASP.NET和客户端站点中设计的,随后标记出来。.msg文件提供下载错误

+0

​​ Error logging hours in PT.msg ,上述 PhotoShare.png MaxRecursion 2012-03-15 10:37:29

+0

是进来输出 – MaxRecursion 2012-03-15 10:37:51

回答

13

找到的ASP.NET forum。在IIS 6.0

Response.ContentType = "application/vnd.ms-outlook"; 
Response.AppendHeader("Content-Disposition","attachment; filename=Message.msg"); 
Response.TransmitFile(Server.MapPath(YourPathToMsgFile)); 
Response.End(); 

或更改设置:

创建一个处理程序,下载一个文件

Select HTTP Header -> click MIME types - > Click New and add ".msg" as extension and "application/vnd.ms-outlook" as MIME type.

+2

在IIS 7.5的代码,点击在服务器上,然后在IIS部分选择“MIME类型”,然后单击右侧操作栏下的“添加...”(或右键单击MIME类型列表)。 – Rocklan 2013-05-06 05:42:37

3

使用这个标签下面,我们可以直接提到的文件名的标签。

<a href="Your File_Location">Download Link</a> 

没有必要在控制器中指定代码。

刚好低于标记添加到的web.config内部

<staticContent> 
    <mimeMap fileExtension=".msg" mimeType="application/octet-stream" /> 
</staticContent> 
+0

请编辑您的答案,并解释为什么这可以解决问题。 – Ben 2015-02-09 15:25:54

1
<system.webServer> 
    <staticContent> 
     <mimeMap fileExtension=".msg" mimeType="application/octet-stream" /> 
    </staticContent> 
</system.webServer> 
+0

我可以请您请您在答案中添加更多的上下文。仅有代码的答案很难理解。如果您可以在帖子中添加更多信息,它可以帮助提问者和未来的读者。 – RBT 2017-01-25 00:09:00