2013-12-16 6 views
1

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

У меня есть страница с формой, именем, адресом и т. Д. У меня также есть элемент управления файловой системой, чтобы прикрепить изображение к форме.

Теперь я хотел бы передать данные формы и файл изображения в файл ASHx, пытаясь использовать $ .ajax ...

, а затем в файле ASHx вставки записи с помощью рамки сущности.

Теперь я знаю, что могу отправить formdata, но как я могу получить файл ashx, чтобы понять, что файл не является строкой. который он в настоящее время считает, и вставить его в тип данных изображения SQL.

$("#submit").click(function() { 
    var file = $("#file")[0].Files[0]; 
    var fd = new FormData(); 
    fd.append("address", $("#street").val() + "; " + $("#city").val() + "; " + $("#postcode").val()); 
    fd.append("firstname", $("#firstname").val()); 
    fd.append("lastname", $("#lastname").val()); 
    fd.append("avatar", file); 
    $.ajax({ 
     type: "POST", 
     contentType: false, 
     processData: false, 
     url: "<%= Page.ResolveUrl("~/GlobalUpdate.ashx?update=info")%>", 
     data: fd 
    }).success(function (data) { 

    }); 
    }); 

ответ

1

Это выглядит как нормальное поведение. Мне кажется, что строка, которую вы видите, на самом деле представляет собой содержимое файла (байты), отформатированное в строке базы 64. Если это так, то это просто вопрос получения байтов из этой базы 64 строки и хранения thw байтов в базе данных. Дайте ему попробовать и посмотреть, как она идет

1

вы не можете загрузить файл с помощью $ .ajax того протокола

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

http://www.uploadify.com/