2015-02-03 4 views
1

яваскрипта FormData мне нужно загружать файлы и некоторые другие данные, для которых я использовал сильфон кодКак читать данные из другой, чем файл

HTML:

<intut type='file' id='file1'> 
<intut type='file' id='file2'> 

JavaScript:

var data = new FormData(), 
    categories = ['node.js','redis'], 
    roles = ['admin','HR']; 
data.Append ($('#file1').Files[0].name, $('#file1').Files[0]); 
data.Append ($('#file2').Files[0].name, $('#file2').Files[0]); 
data.Append ('category', 'categories'); 
data.Append ('role', 'roles'); 

    $.ajax({ 
     url: baseaddress + 'DocRepo/GetAdminUploadData', 
     type: 'Post', 
     data: data, 
     cache: false, 
     dataType: 'json', 
     async: false, 
     contentType: false, 
     processData: false, 
     success: function (data) { 
     }, 
     error: function (data) { 
     } 
    }); 

У меня есть метод действий в моем MVC-контроллере (а не webapi) GetAdminUploadData, где мне нужно собрать все данные (файлы, категории и роли), как это сделать.

+2

Что подпись вашего метода POST? –

+0

@StephenMuecke '[HttpPost] общедоступная строка GetAdminUploadData() {return string.empty}' – Riki

+0

Ваш метод даже не ActionResult, и у него нет никаких параметров. Добавьте параметры для значений вашей публикации, например. 'string category, string role', но поскольку вы, как представляется, динамически называете файлы, вам нужно будет получать файлы из' Request.Files', хотя было бы намного проще, если бы у вас был параметр для файла HttpPostedFileBase1, HttpPostedFileBase file2' –

ответ

0

Предполагая, что вы только ищете, как получить нефайловые элементы (как сказано в заголовке ... хотя в теле вопроса не указано) и что код сервера - C# (в качестве примечания от 3-feb-15) Я бы сказал, что этот вопрос является дубликатом и ответил: How can retrieve string formData js in c#.

А именно: HttpContext.Current.Request.Form [ "KEY"]

Смежные вопросы