第一种:这种获取MIME类型(Content Type)的方法需要在.NET 4.5之后才能够支持,但是非常简单。
优点:方便快捷
缺点:只能在.NET 4.5之后使用
public FileResult down() { var file = Server.MapPath(@"Downloadfff.zip"); return File(file, MimeMapping.GetMimeMapping(file)); }
之后可以直接使用MimeMapping类的静态方法获取文件的MIME类型
第二种:如果没有的MIME TYPE将会返回,自定义方法:
// 自定义一个方法 // 通过系统中的Content Type来获取MIME TYPE public static string GetMimeType(string fileName) { string mimeType = "application/unknown"; string ext = Path.GetExtension(fileName).ToLower(); RegistryKey regKey = Registry.ClassesRoot.OpenSubKey(ext); if (regKey != null && regKey.GetValue("Content Type") != null) { mimeType = regKey.GetValue("Content Type").ToString(); } return mimeType; }
public FileResult down() { var file=Server.MapPath(@"Downloadffmpeg.zip"); return File(file, GetMimeType(Path.GetFileName(file))); }