加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

在ASP.NET中验证上载文件的ContentType

发布时间:2020-12-16 09:14:04 所属栏目:asp.Net 来源:网络整理
导读:我将一些文件存储在我的数据库中,因为我将它们以二进制格式存储而不保留任何其他信息,我必须确保所有这些文件都采用相同的格式,以便我能够“服务” “他们以后(如果有一种简单的方法从字节数组推断文件类型,请告诉,但这不是重点). 所以,我需要做的是验证上传
我将一些文件存储在我的数据库中,因为我将它们以二进制格式存储而不保留任何其他信息,我必须确保所有这些文件都采用相同的格式,以便我能够“服务” “他们以后(如果有一种简单的方法从字节数组推断文件类型,请告诉,但这不是重点).

所以,我需要做的是验证上传的每个文件,以确保它是所需的格式.

我已经设置了一个带有FileUpload控件和CustomValidator的FieldTemplate:

<asp:FileUpload ID="FileUpload" runat="server" />&nbsp;


<asp:CustomValidator
    ID="CustomValidator1"
    runat="server"
    ErrorMessage="PDF only."
    ControlToValidate="FileUpload"
    OnServerValidate="CustomValidator1_ServerValidate">
</asp:CustomValidator>

我缺少的是放在CustomValidator1_ServerValidate方法中的代码,该方法检查上传的文件以确保其格式正确(在本例中为PDF).

提前致谢.

解决方法

使用FileUpload.PostedFile.ContentType属性验证MIME类型(应为application / pdf).出于安全原因,还要验证文件扩展名是否合适(.pdf).您可以拥有一个静态哈希表,其中包含从MIME类型到文件扩展名的映射,并用作查找来验证扩展名.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读