使用FileUpload过滤文件扩展名

我正在编写一个asp.net Web应用程序,它涉及使用FileUpload控件。

现在,这个特定的FileUpload控件只需要.zip或.gz文件类型。 如果上载的文件类型不正确,则会向用户显示错误消息。 此function已实施。

我想要做的是过滤用户点击“浏览”时看到的可见文件类型。

您可能已经看到类似以下文件打开对话框。
在此处输入图像描述

我圈出了代表文件扩展名filter的区域。

这是一个非常常见的function,我希望它可以内置到当前的FileUpload控件中,但经过一些在线搜索后,我发现一些post说它无法完成。

这些post来自2009年,超过两年前。

现在,我的问题是:当前的Asp.Net 4.0是否支持此function?如果没有,你知道任何简单的解决方案来获得我想要的function吗?

我想再次指出,我能够validation用户是否选择了支持的文件类型。 我正在寻找的是一个整容改变,它将在打开文件对话框中过滤掉不需要的文件类型。

我相信这是不可能的。浏览器中的文件类型filter不受asp.net控制。它是一个浏览器function。

这个问题已在stackoverflow中询问。请点击使用文件上传控件过滤文件类型

您可以尝试以下代码。

  

它适用于现代浏览器。

不要忘记使用代码隐藏程序来validation扩展。

在fileupload控件中选择图像..

希望它能帮助你

 asp:RegularExpressionValidator ID="rexp" runat="server" ControlToValidate="fupProduct" ErrorMessage="Only .gif, .jpg, .png, .tiff and .jpeg" ValidationExpression="(.*\.([Gg][Ii][Ff])|.*\.([Jj][Pp][Gg])|.*\.([Bb][Mm][Pp])|.*\.([pP][nN][gG])|.*\.([tT][iI][iI][fF])$)"> 

您可以从ASP.NET FileUpload Control创建validation文件扩展名

我相信你可以选择这个解决方案

validationASP.NET FileUpload Control的文件扩展名

客户端可以! 但是,请记住进行服务器端validation。

这两个链接显示了它: http : //aspalliance.com/1614_Adding_Filter_Action_to_FileUpload_Control_of_ASPNET_20.all http://www.codeshode.com/2011/07/validate-file-extension-for-aspnet.html