I am using ASP.NET MVC 3. The application is targeting .net 4.0.
I was trying to pass a virtual path as argument to my controller's action and return the file without reviewing the actual physical path on the server and providing basic Authorization. Unfortunately I was unable to find a suitable overload for File method to generate the appropriate ActionResult. I am stuck at determining mime type for the file.
I've found a couple of solutions for determining mime-types by file name, but none of them are satisfying me. I was wondering how does IIS determines the mime type when you are requesting a file on the server? Is it possible to somehow pass to IIS the responsibility for determining the mime type for the response
If you are using .net 4.5 there is a function now that takes a filename and returns a mimetype:
MimeMapping.GetMimeMapping(filename)
http://msdn.microsoft.com/en-us/library/system.web.mimemapping.getmimemapping.aspx
Take a look at the function later in this question:
How to use Generic Handlers (ASHX) in ASP.NET MVC?
It is a little out of date with the list of file types now but it's a start, will try to find my more recent one.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With