Friday, July 16, 2010
For Episode 19 of the Cloud Cover show, Steve and I discussed the importance of setting the Content-Type on your blobs in Windows Azure blob storage. This was was especially important for Silverlight clients. I mentioned that there was a way to look up a Content Type from your registry as opposed to hardcoding a list. The code is actually pretty simple. I pulled this from some code I had lying around that does uploads.
Here it is:
private static string GetContentType(string file)
{
string contentType = "application/octet-stream";
string fileExt = System.IO.Path.GetExtension(file).ToLowerInvariant();
RegistryKey fileExtKey = Registry.ClassesRoot.OpenSubKey(fileExt);
if (fileExtKey != null && fileExtKey.GetValue("Content Type") != null)
{
contentType = fileExtKey.GetValue("Content Type").ToString();
}
return contentType;
}