我有一个Wizard控件,其中一个页面包含FileUpload控件。我想在向导的最后一页访问文件流,但这似乎不起作用。
据我所知,您只能在使用控件后立即发生的回发中访问已发布文件的文件流。由于文件最终将被放入DB记录中,我可以在此时保存它,但如果可能的话我宁愿避免使用它。
是否有人知道此问题的解决方法?
答案 0 :(得分:3)
我自己没有使用过这个控件,但因为它基于HTML标准INPUT控件,我认为你不得不接收处理该控件的post-back上的文件。
当你从本地文件系统有效地沙箱化时,绕过这个问题的难点在于如何从客户端系统中提取文件,因此需要上传控制。
我建议您将文件存储到数据库blob中(或作为文件系统上的临时文件,可能需要一个唯一的文件名;我发现GUID很好用)然后使用Session对象保留对该文件系统的引用结束了。我能想到的唯一另一个不涉及主要工作的方法是将文件上传到你向导的最后一页。
答案 1 :(得分:2)
您可以使用CSS / jQuery显示您在托管客户端的各个向导阶段,而不是将POST更新回服务器吗?这样,您唯一的POST(导致上传)将在向导的末尾。