0

我可以使用HttpPostedFileBase在 MVC3 (C#) 中上传文件,但我想了解更多关于上传文件的信息......

  • 怎么获得

文件大小

  • 怎么获得

文件类型

  • 如何按文件类型过滤文件上传

请帮我

4

1 回答 1

3

文件大小

使用file.ContentLengthwhere file is you HttpPostedFileBasevariable。

文件类型

您可以使用文件名的扩展名,但显然不是 100% 可靠。如果您想要一个防弹解决方案,您将不得不使用启发式方法。例如查看上传文件的内容以尝试猜测其类型。例如,要测试已知的图像格式,您可以使用以下技术。我还写了另一篇关于使用自定义验证属性验证已知图像格式的文章。

如何按文件类型过滤文件上传

HTML5 支持指定内容类型:

<input type="file" name="file" accept="image/*" />

如果您的浏览器不支持 HTML5,您将不得不使用其他一些技术,例如 Flash 或其他东西。您可以使用现有的插件,例如UploadifyPlupload,它们通过测试客户端浏览器的功能并逐步回退来提供此功能。

为了过滤文件输入框的内容,您绝对无法在 IE7 中使用原生 HTML 和 javascript。

于 2012-07-09T10:16:44.163 回答