Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net SWFUpload多文件服务器端处理_Asp.net_File Upload_Server Side_Swfupload - Fatal编程技术网

Asp.net SWFUpload多文件服务器端处理

Asp.net SWFUpload多文件服务器端处理,asp.net,file-upload,server-side,swfupload,Asp.net,File Upload,Server Side,Swfupload,我需要用户能够将多个文件上传到我的服务器,因此我使用的是SWFUpload实用程序。SWFUpload一个接一个地发送文件,我需要将它们全部存储在同一个临时目录中。我的ASP.NET处理程序一个接一个地接收文件,我可以适当地存储文件 我的问题是:如何知道哪些文件属于同一上传?换言之,如何连接处理程序中的文件?我看到了两种方法(但它们继承了相同的思想) 这个想法基于您应该具有类似于sessionId参数的东西。对于每组文件,此值应该是唯一的。您可以使用javascriptuuid生成器或类似的东西

我需要用户能够将多个文件上传到我的服务器,因此我使用的是
SWFUpload
实用程序。SWFUpload一个接一个地发送文件,我需要将它们全部存储在同一个临时目录中。我的
ASP.NET
处理程序一个接一个地接收文件,我可以适当地存储文件

我的问题是:如何知道哪些文件属于同一上传?换言之,如何连接处理程序中的文件?

我看到了两种方法(但它们继承了相同的思想)

这个想法基于您应该具有类似于
sessionId
参数的东西。对于每组文件,此值应该是唯一的。您可以使用
javascript
uuid
生成器或类似的东西

此外,这个
sessionId
变量可以通过查询字符串传递(稍微修改一下处理程序url):
~/UploadHandler.ashx?sessionId={whatever}
或作为post参数传递(猜测,更好的方法)。 可以在服务器端使用以下方法检索该值:
context.Request[“SessionId”]

在客户端,您应该能够动态更改post参数或处理程序url。可通过以下方式实现:

void addPostParam(name, value)
addPostParam函数添加一个 将发送的名称/值对 上传的所有文件的帖子

名称/值对也将出现 在post_参数设置中

动态修改上载url 背景

客户端方法。他们应该从电话里打过来

fileDialogComplete(number of files selected, number of files queued, total number of files in the queued)
fileDialogComplete事件激发 在“文件选择”对话框窗口之后 已关闭,并且已选择所有 文件已被处理。电话号码 “排队的文件数”参数指示 排队的文件数 从对话框选择(相反 添加到队列中的文件数)

方法


希望,这会有帮助。

@Alex:谢谢你的建议。我有一种感觉,这是我需要采取的方法,但我希望有一些魔力:)
fileDialogComplete(number of files selected, number of files queued, total number of files in the queued)