当前位置 : 主页 > 网络编程 > ASP >

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

来源:互联网 收集:自由互联 发布时间:2021-06-24
我将一些文件存储在我的数据库中,因为我将它们以二进制格式存储而不保留任何其他信息,我必须确保所有这些文件都采用相同的格式,以便我能够“服务” “他们以后(如果有一种简单
我将一些文件存储在我的数据库中,因为我将它们以二进制格式存储而不保留任何其他信息,我必须确保所有这些文件都采用相同的格式,以便我能够“服务” “他们以后(如果有一种简单的方法从字节数组推断文件类型,请告诉,但这不是重点).

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

我已经设置了一个带有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类型到文件扩展名的映射,并用作查找来验证扩展名.
网友评论