Как обслуживать один AjaxFileHandler.ashx для управления загрузкой нескольких файлов

#c# #jquery #asp.net

#c# #jquery #asp.net

Вопрос:

Я работаю с функциональностью загрузки файлов. У меня есть 2 типа изображений и 1 тип загрузки html в другом месте.

Например,

  1. У меня есть элемент управления загрузкой домашних изображений, чтобы сохранить все файлы где-нибудь в папке / Home

  2. У меня есть элемент управления загрузкой изображений Office для сохранения всех файлов где-нибудь в папке / Office

  3. Если у меня есть управление загрузкой файлов html, я хочу поместить все страницы в папку Html где-нибудь

итак, для этого,

 $("#imgHomePicture").fileupload({
    url: 'AjaxFileHandler.ashx',
    dataType: 'json',
    cache: false,
    async: true,
}).on('fileuploadadd', function (e, data) {
    e.preventDefault();
}).on('fileuploaddone', function (e, data) {
    alet("upload done");
    e.preventDefault();
}).on('fileuploadprogress', function (e, data) {
    var percentVal = '0%';
    var percentVal = parseInt(data.loaded / data.total * 100, 10);
    $('.bar').css(
        'width',
        percentVal   '%'
    );
    $('.percent').html(percentVal   '%');
}).on('fileuploadcomplete', function (e, data) {
    alert("Upload complete");
});

$("#imgOfficePicture").fileupload({
    url: 'AjaxFileHandler.ashx',
    dataType: 'json',
    cache: false,
    async: true,
......

$("#htmlUpload").fileupload({
    url: 'AjaxFileHandler.ashx',
    dataType: 'json',
    cache: false,
    async: true,

.....
  

C # код:

 public class AjaxFileHandler : IHttpHandler, IRequiresSessionState
{
    public void ProcessRequest(HttpContext context)
    {
        // here I want to know that, the request coming from Home /office or html file upload, based on this I can create the path and save file.
    }
}
}
  

Комментарии:

1. Аргументы строки запроса? AjaxFileHandler.ashx?source=изображение, AjaxFileHandler.ashx?source=html

2. вы уверены в этом?

3. Нет, но это то, что я мог бы попробовать как quick win, чтобы получить там какой-то идентификатор. Или для каждого есть свой обработчик? Также вы можете получить идентификатор типа содержимого / mime-типа, который может помочь. Я думаю, что документы word — это что-то вроде application / x или что-то другое.