如何在Web应用程序(ASP)中上传文件。净,c#,IIS)

时间:2022-06-04 05:30:31

Requirements:

要求:

  1. On a web page in our web application, we have a requirement to upload a file. The file is most likely to be a pdf (pdf file has form fields filled in by users), or scanned jpeg/tiff/gif files in zipped format where user has scanned the form.
  2. 在web应用程序的web页面上,我们需要上传一个文件。该文件很可能是pdf文件(pdf文件中有用户填写的表单字段),或者是压缩格式的扫描jpeg/tiff/gif文件,用户已经扫描了表单。
  3. The size of the file is likely to be be 3-7Mb.
  4. 文件的大小可能是3-7Mb。
  5. The file will be stored in as BLOD in the Oracle Database
  6. 该文件将作为BLOD存储在Oracle数据库中

System Information:

系统信息:

  1. Windows Server 2003
  2. Windows Server 2003
  3. IIS 6.0
  4. IIS 6.0
  5. ASP.Net/C# 3.5 with Ajax Control Toolkit
  6. ASP。使用Ajax控件工具包的net / c# 3.5

Questions:

问题:

  1. Is there an AJAX control readily available to handle file upload of this type. The control being AJAX is preferred, but a non-AJAX would do.
  2. 是否有AJAX控件可以轻松地处理此类文件上传。首选的控件是AJAX,但非AJAX就可以了。
  3. Are there any .Net components available for checking file validity. Our check will be mainly for pdf. Optionally we may want to allow jpeg/tiff/gif/png - any components to check these file types?
  4. 是否有任何。net组件可用来检查文件有效性。我们的支票将主要用于pdf。我们可以选择允许jpeg/tiff/gif/png -任何组件检查这些文件类型?
  5. From the security perspective, are there any Anti-Virus components that can be invoked from .Net code to check the file for virus?
  6. 从安全的角度来看,是否有任何防病毒组件可以从。net代码中调用来检查文件中的病毒?

Anyone worked on a similar functionality can please share their experience?

任何从事类似功能的人都可以分享他们的经验吗?

Thanks in advance

谢谢提前

-Moiz

-Moiz

4 个解决方案

#1


0  

http://swfupload.org/ is a Flash-based, asynchronous file upload component that is very easy to implement and integrate with ASP.Net (since the uploaded file comes through in the Request.Files[] collection).

org是一个基于flash的异步文件上传组件,它很容易实现并与ASP集成。Net(因为上传的文件在请求中通过。文件集合[])。

It supplies client side file size and extension tests as well. You'll want to still validate file extensions and such on the server since the validations are handled JavaScript properties and may be circumvented (haven't seen any JavaScript related upload tool that can't be bypassed).

它还提供客户端文件大小和扩展测试。您仍然需要在服务器上验证文件扩展名等,因为验证是处理JavaScript属性的,并且可能会被绕过(还没有看到任何JavaScript相关的上传工具不能被绕过)。

Some anti-virus vendors provide an API to scan memory or a specific file; however, I've seen a number of places drop the file into a directory that's constantly monitored and handled using that type of scanning instead of through the api.

一些杀毒软件供应商提供一个API来扫描内存或特定的文件;但是,我看到很多地方将文件放到一个目录中,该目录使用这种类型的扫描而不是通过api进行监视和处理。

#2


4  

1) Have a look at http://www.uploadify.com/

1)看看http://www.uploadify.com/

2) The above component has file size/extension tests

2)上述组件有文件大小/扩展测试

3) You should install anti-virus on your web server.

3)您应该在web服务器上安装杀毒软件。

#3


0  

take a look at http://ajaxuploader.com/ also consider Silverlight solutions, like http://www.codeplex.com/SilverlightFileUpld Flash based uploaders (like YUI2 Uploader, http://developer.yahoo.com/yui/uploader/) have some limitations comparing to Silverlight due to raised security in recent versions of Flash. For example you can not pop up file selection dialog from client JavaScript.

看看http://ajaxuploader.com/也可以考虑Silverlight解决方案,比如http://www.codeplex.com/SilverlightFileUpld基于Flash的上传者(比如YUI2上传者,http://developer.yahoo.com/yui/uploader/),与Silverlight相比有一些限制,因为最近版本的Flash提高了安全性。例如,您不能从客户端JavaScript弹出文件选择对话框。

#4


0  

The ASP.Net AJAX toolkit now has an Async File Upload control

ASP。Net AJAX工具包现在有一个Async文件上传控件。

This control was released after we had already implemented our requirement in production (without async file upload).

这个控件是在我们已经在产品中实现了我们的需求(没有异步文件上传)之后发布的。

#1


0  

http://swfupload.org/ is a Flash-based, asynchronous file upload component that is very easy to implement and integrate with ASP.Net (since the uploaded file comes through in the Request.Files[] collection).

org是一个基于flash的异步文件上传组件,它很容易实现并与ASP集成。Net(因为上传的文件在请求中通过。文件集合[])。

It supplies client side file size and extension tests as well. You'll want to still validate file extensions and such on the server since the validations are handled JavaScript properties and may be circumvented (haven't seen any JavaScript related upload tool that can't be bypassed).

它还提供客户端文件大小和扩展测试。您仍然需要在服务器上验证文件扩展名等,因为验证是处理JavaScript属性的,并且可能会被绕过(还没有看到任何JavaScript相关的上传工具不能被绕过)。

Some anti-virus vendors provide an API to scan memory or a specific file; however, I've seen a number of places drop the file into a directory that's constantly monitored and handled using that type of scanning instead of through the api.

一些杀毒软件供应商提供一个API来扫描内存或特定的文件;但是,我看到很多地方将文件放到一个目录中,该目录使用这种类型的扫描而不是通过api进行监视和处理。

#2


4  

1) Have a look at http://www.uploadify.com/

1)看看http://www.uploadify.com/

2) The above component has file size/extension tests

2)上述组件有文件大小/扩展测试

3) You should install anti-virus on your web server.

3)您应该在web服务器上安装杀毒软件。

#3


0  

take a look at http://ajaxuploader.com/ also consider Silverlight solutions, like http://www.codeplex.com/SilverlightFileUpld Flash based uploaders (like YUI2 Uploader, http://developer.yahoo.com/yui/uploader/) have some limitations comparing to Silverlight due to raised security in recent versions of Flash. For example you can not pop up file selection dialog from client JavaScript.

看看http://ajaxuploader.com/也可以考虑Silverlight解决方案,比如http://www.codeplex.com/SilverlightFileUpld基于Flash的上传者(比如YUI2上传者,http://developer.yahoo.com/yui/uploader/),与Silverlight相比有一些限制,因为最近版本的Flash提高了安全性。例如,您不能从客户端JavaScript弹出文件选择对话框。

#4


0  

The ASP.Net AJAX toolkit now has an Async File Upload control

ASP。Net AJAX工具包现在有一个Async文件上传控件。

This control was released after we had already implemented our requirement in production (without async file upload).

这个控件是在我们已经在产品中实现了我们的需求(没有异步文件上传)之后发布的。