Constants for (almost) all MIME types and method to determine MIME type from a file name. Contains just over 1000 mime types. The Dictionary is generated from the jshttp/mime-db db.json file. Works similar to .NET's System.Web.MimeMapping.GetMimeMapping. It aggregates data from the following sources: https://www.iana.org/assignments/media-types/media-types.xhtml https://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/conf/mime.types https://hg.nginx.org/nginx/raw-file/default/conf/mime.types See: https://github.com/jshttp/mime-db#mime-db https://learn.microsoft.com/dotnet/api/system.web.mimemapping.getmimemapping
$ dotnet add package MimeMappingConstants for (almost) all MIME types and method to determine MIME type from a file name. Contains just over 1000 mime types.
The Dictionary is generated from the jshttp/mime-db db.json.
Works similar to .NET's System.Web.MimeMapping.GetMimeMapping.
It aggregates data from the following sources:
The library is just a literal C# Dictionary<string, string> with over 1000 entries, and a helper method that can be passed a file path.
string myFile = "myimage.jpg";
string mimeType = MimeMapping.MimeUtility.GetMimeMapping(myFile);
Console.WriteLine(mimeType); // output: image/jpeg
string randomFile = "data.asdf";
string mimeType = MimeMapping.MimeUtility.GetMimeMapping(randomFile);
Console.WriteLine(mimeType); // output: application/octet-stream
string rawExtension = "json";
string mimeType = MimeMapping.MimeUtility.GetMimeMapping(rawExtension);
Console.WriteLine(mimeType); // output: application/json
// List all types..
foreach(var kp in MimeMapping.MimeTypes.TypeMap)
{
Console.WriteLine($"File extension: {kp.Key}, mime string: {kp.Value}");
}