Я вижу 2 способа сделать это (но они наследуют одну и ту же идею).
Идея основана на том, что у вас должно быть что-то вроде sessionId
параметра. Это значение должно быть уникальным для каждого набора файлов. Вы можете использовать генераторы javascript
uuid
или что-то в этом роде.
Кроме того, эту переменную sessionId
можно передать через строку запроса (немного изменив URL вашего обработчика): ~/UploadHandler.ashx?sessionId={whatever}
или в качестве параметра post (думаю, лучше)
Значение может быть получено на стороне сервера с помощью: context.Request["SessionId"]
например.
На стороне клиента вы сможете динамически изменять параметры записи или URL обработчика. Это можно сделать с помощью:
void addPostParam(name, value)
Функция addPostParam добавляет
пара имя / значение, которая будет отправлена в
POST для всех загруженных файлов.
Также появится пара имя / значение
в настройке post_params.
или
void setUploadURL(url)
Динамически изменяет upload_url
установка.
клиентские методы. Они должны быть вызваны из
fileDialogComplete(number of files selected, number of files queued, total number of files in the queued)
Событие fileDialogComplete запускается
после диалогового окна выбора файла
был закрыт и все выбранные
файлы были обработаны. Число
файлов в очереди 'аргумент указывает
количество файлов в очереди
из диалогового выбора (в отличие
на количество файлов в очереди).
способ.
Надеюсь, это поможет.