如何获取ASP.NET C#中请求的文件的MIME类型?

我想根据MIME类型处理不同的请求.例如,我有PDF,图像和其他媒体文件,我想根据各自的MIME类型禁止访问.关于如何做到这一点的任何想法?谢谢您的帮助.

我还应该注意,访问Windows注册表不是我的应用程序的选项.

解决方法

.NET的mime类型映射存储在System.Web.MimeMapping类中,该类提供 GetMimeMapping方法.

在.NET 4.5之前,此类已标记为内部,因此您的代码无法使用.在这种情况下,您可以做的最好的事情是窃取列表,您可以使用Reflector并反编译静态构造函数(cctor).

如果采用这种方法,最好只创建一个受支持的扩展名列表及其mime类型并将其存储在字典中. (MimeMapping中的列表有点冗长)

相关文章

引言 本文从Linux小白的视角, 在CentOS 7.x服务器上搭建一个...
引言: 多线程编程/异步编程非常复杂,有很多概念和工具需要...
一. 宏观概念 ASP.NET Core Middleware是在应用程序处理管道...
背景 在.Net和C#中运行异步代码相当简单,因为我们有时候需要...
HTTP基本认证 在HTTP中,HTTP基本认证(Basic Authenticatio...
1.Linq 执行多列排序 OrderBy的意义是按照指定顺序排序,连续...