goo*_*ate 10 iis iis-7 mime mime-types
我如何以编程方式读取IIS的MIME类型?当我使用WCF将数据流传输到我的客户端时,我想使用它们.
任何提示,或API将不胜感激
Kev*_*Kev 14
我假设这只是IIS7而你正在使用C#3.0或更高版本:
using Microsoft.Web.Administration;
....
using(ServerManager serverManager = new ServerManager())
{
// If interested in global mimeMap:
var config = serverManager.GetApplicationHostConfiguration();
// Use if interested in just a particular site's mimeMap:
// var config = serverManager.GetWebConfiguration("Default Web Site");
var staticContent = config.GetSection("system.webServer/staticContent");
var mimeMap = staticContent.GetCollection();
// Print all mime types
foreach (var mimeType in mimeMap)
{
Console.WriteLine(String.Format("{0} = {1}", mimeType["fileExtension"],
mimeType["mimeType"]));
}
// Find a mime type based on file extension
var mt = mimeMap.Where(
a => (string) a.Attributes["fileExtension"].Value == ".pdf"
).FirstOrDefault();
if (mt != null)
{
Console.WriteLine("Mime type for .pdf is: " + mt["mimeType"]);
}
}
Run Code Online (Sandbox Code Playgroud)
你需要引用Microsoft.Web.Administration.dllin c:\windows\system32\inetsrv.
您的代码也需要管理员权限才能执行此操作.
如果使用ASP.Net 4.5或更高版本,您可以使用System.Web.MimeMapping.GetMimeMapping如下:
void Page_Init()
{
string[] extensions = new string[]
{
".pdf",
".xls",
".xlsx",
".ppt",
".pptx",
".mp3",
".ogg",
".svg",
".pdf",
".png",
};
foreach (string extension in extensions)
{
string mimeType = MimeMapping.GetMimeMapping(extension);
Response.Write(String.Format("{0} => {1}<br />",
extension,
mimeType
));
}
}
Run Code Online (Sandbox Code Playgroud)
结果:
.pdf => application/pdf
.xls => application/vnd.ms-excel
.xlsx => application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
.ppt => application/vnd.ms-powerpoint
.pptx => application/vnd.openxmlformats-officedocument.presentationml.presentation
.mp3 => audio/mpeg
.ogg => video/ogg
.svg => image/svg+xml
.pdf => application/pdf
.png => image/png
Run Code Online (Sandbox Code Playgroud)
注册到系统的 Mime 类型在注册表中的“HKEY_CLASSES_ROOT\Mime\Database\Content Type”下定义。
您是否正在寻找 IIS 中定义的特定网站的 MIME 类型?
| 归档时间: |
|
| 查看次数: |
5838 次 |
| 最近记录: |