Мы используем версию для сообщества Telerik Sitefinity и весело развёртываем с её помощью обработчики и веб-службы. Таким образом, мне интересно, можем ли мы при использовании Uploadify опубликовать заголовок ashx это метод на стороне сервера, который может позаботиться о загрузке? Если да, то не мог бы кто-нибудь быть очень любезным и опубликовать быстрый и грязный пример, чтобы я начал?
Это приводит к другому вопросу. На этой конкретной странице мы используем jQuery.FormWizard, который плохо работает с формами на стороне сервера. Когда дело доходит до загрузки файлов, то, что мы пытаемся сделать, это открыть модальную форму, чтобы пользователь загружал свои файлы, где после завершения мы просто закроем эту модальную форму для них. Но это не работает, и я почти уверен, что это потому, что я неправильно обрабатываю OnComplete/OnAllComplete. Подскажите пожалуйста как это сделать?
Вот загрузка в файле js:
$("#VisaHelpNeeded").click(function() {
//This opens the modal form
$dialog.dialog('open');
//********** Uploadify stuff here ********************
$('#fileInput').uploadify({
'uploader': '../../App_Themes/ApRegistration/images/uploadify.swf',
'script': 'WebForm1.aspx/Register',
'scriptData': { 'society': $('#nationalSociety').val(), 'participant': $('participantName').val() },
'cancelImg': '../../App_Themes/ApRegistration/images/cancel.png',
'auto': true,
'multi': true,
'fileDesc': 'Image Files',
'fileExt': '*.jpg;*.png;*.gif;*.jpeg;*.bmp',
'sizeLimit': 4000000,
onAllComplete: function(){$('#dialog-form').dialog('close');}
});
});
Вот модальная форма
var $dialog = $('<div></div>')
.html('<label>Please attach a scanned copy of your passport</label><input id="fileInput" name="fileInput" type="file" />')
.dialog({
autoOpen: false,
height: 350,
width: 485,
modal: true,
buttons: {
Cancel: function() {
$(this).dialog('close');
}
}
});
И вот попытка сигнатуры вызова метода для сохранения его в коде позади (я где-то читал, исследуя это, что метод должен быть статическим веб-методом, но сейчас я не могу найти ссылку, извините)
[WebMethod(true)]
public static void Register(HttpContext context)
{
//do lots of cool code here
}
Большое спасибо/