使用ASP.NET中的FileUpload控件保存附加文件的问题

时间:2011-04-05 14:43:03

标签: asp.net session file-upload datatable

在我的网站上,我有一个主页,通过点击图像按钮,我被重定向到另一个.apsx页面。这个页面包含一个FileUpload控件和2个按钮(ATTACH,CANCEL)。当用户从本地机器中选择/浏览文件并单击ATTACH按钮,我在GRIDVIEW中显示该文件,并将该文件的详细信息如Filename推送到DATATABLE。

用户可以通过这种方式浏览多个文件,所有这些文件都被添加到GridView,并且也被推送到DATATABLE.Now当用户点击CANCEL按钮时,我将会话对象中的整个DATATABLE发送到HOME页面。单击主页中的SAVE按钮,DATATABLE中的文件必须存储在我在代码中提到的物理位置。

我面临的问题是,当我写作时 FileUpload fl = new FileUpload;

fl.SaveAs(DT [ “文件名”]);

这些文件根本没有保存在该位置。

但是,如果我使用第二页的Session传递FileUpload控件,

FileUpload fl =(FileUpload)Session [“FileUpload”]

文件以正确的文件名保存,但所有文件的内容都包含最新上传文件的内容。我知道问题所在,但无法获得解决方案。

我的要求是仅在单击主页中的“保存”按钮后才将文件保存在物理路径中。请建议我......提前谢谢!

1 个答案:

答案 0 :(得分:1)

我相信asp.net FileUpload控件一次只支持上传一个文件。这就是为什么你只看到最后一个文件的内容。您需要为每次上传创建单独的控件,自行滚动或使用第三方供应商控件。