Мы используем версию сообщества 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
}
Большое спасибо /