我正在尝试通过支持的文件类型验证文件上传,现在我将ContentType属性与支持的文件类型列表进行比较,例如“text / xml”“application / x-zip-compressed”等。我找到了这些字符串只需尝试上传各种文件并在调试模式下检查ContentType属性的值。
有没有办法避免这种情况?
因为检查20种不同文件类型的ContentType属性是很痛苦的,找到这些文件或从其他类型创建转换是一项巨大的工作。
是仅通过文件扩展名进行比较的解决方案吗?
非常感谢。
答案 0 :(得分:1)
ContentType是一种非常合理的比较方式(在服务器端)。
您可以在此处获取各种MIME类型的列表 http://www.w3schools.com/media/media_mimeref.asp
如果你支持某种文件类型,那么你也承担了转换它的工作,那么问题到底是什么?
您只需要查看上传的文件是否是您支持的类型之一。这是一个可以存储在HashSet中的列表,然后当您收到并上传文件时,只需检查HasSet
hashSet.Contains(contentType)