views:

1167

answers:

2

Can I setup a custom MIME type through ASP.NET or some .NET code? I need to register the Silverlight XAML and XAP MIME types in IIS 6.

+4  A: 

To add to the master mime type list:

using (DirectoryEntry mimeMap = new DirectoryEntry("IIS://Localhost/MimeMap"))
{
    PropertyValueCollection propValues = mimeMap.Properties["MimeMap"];

    IISOle.MimeMapClass newMimeType = new IISOle.MimeMapClass();
    newMimeType.Extension = extension; // string - .xap
    newMimeType.MimeType = mimeType;   // string - application/x-silverlight-app

    propValues.Add(newMimeType);
    mimeMap.CommitChanges();
}

Add a reference to :

'System.DirectoryServices' on the .NET add references tab
'Active DS IIS Namespace Provider' on the COM add references tab.

To configure a mime type for a specific site, change ..

'IIS://Localhost/MimeMap'

to

'IIS://Localhost/W3SVC/[iisnumber]/root'

...replacing '[iisnumber]' with the IISNumber of the website.

HTH
Kev

Kev
A: 

'Active DS IIS Namespace Provider' on the COM add references tab.

If it's not there, you have to install IIS on your machine.

See http://stackoverflow.com/questions/1191811/is-there-a-way-to-get-all-the-mime-types-instead-of-wrinting-a-huge-case-statemen/1767242#1767242

tom