Определение WebForm_DoCallback - PullRequest
10 голосов
/ 04 июня 2010

Есть ли в MSDN простое объяснение функции WebForm_DoCallback?

Все, что я могу найти, это статья http://msdn.microsoft.com/en-us/magazine/cc163878.aspx которая включает в себя реализацию WebForm_DoCallback, но не делает хорошей работы, объясняя параметры сами.

function WebForm_DoCallback(eventTarget, eventArgument, 
eventCallback, context, errorCallback) 

Например, что именно он ожидает как 'eventTarget'? Что такое «контекст»? Etc ...

Ответы [ 3 ]

10 голосов
/ 07 февраля 2011

WebForm_DoCallback представляется клиентской стороной к GetCallbackEventReference .Он генерируется с такими же аргументами:

target : имя серверного элемента управления, который обрабатывает обратный вызов клиента.Элемент управления должен реализовывать интерфейс ICallbackEventHandler и предоставлять метод RaiseCallbackEvent.

аргумент : аргумент, переданный из клиентского скрипта в метод RaiseCallbackEvent сервера.

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

context : клиентский сценарий, который оценивается на клиенте до инициации обратного вызова.Результат сценария передается обратно в обработчик событий клиента.

clientErrorCallback : имя обработчика событий клиента, который получает результат при возникновении ошибки в обработчике событий сервера.

useAsync : true для асинхронного обратного вызова;false для синхронного обратного вызова.

clientCallback и clientErrorCallback являются функциями на стороне клиента (обычно javascript) с аргументами в форме:

function clientCallback(returnmessage, context) {}

Где returnmessage - это ответ от сервера (или ошибка), а context совпадает с context , переданным ранее.

Ссылки:

MSDN: метод ClientScriptManager.GetCallbackEventReference

MSDN Magazine: последствия обратных вызовов сценариев в ASP.NET

Сеть разработчиков ESRI: обратные вызовы страниц и обратные вызовы клиентов

5 голосов
/ 16 сентября 2011

мы можем увидеть что-то вроде этого -

WebForm_DoCallback('__Page',parameter,callBack,context,null,false);

в файле ресурса страницы. кажется, что «параметр» является типом значения (строка), в то время как контекст является типом ссылки. во всяком случае, «контекст» используется редко. «Параметр» может быть только строкой, поэтому вам может потребоваться объединить в него несколько значений, а затем разделить их на сервере. в то время как данные передаются на серверную часть, мгновенный относительный класс (как подкласс интерфейса ' ICallbackEventHandler ') будет создан, и будет вызван метод обработчика:

public void RaiseCallbackEvent(string eventArgument)
{
   //deal with the eventArgument( the "parameter")        
}

после этого другой метод включается и возвращает строку обратно в ответ.

public string GetCallbackResult()
{
    //return command;
}

наконец, асинхронный процесс вызывает функцию обратного вызова (в данном случае « callBack »), которая должна иметь 2 входных параметра:

function callBack(returnedStuff, context) {......}

и вот как это работает однако я не знаю, где определена функция javascript "WebForm_DoCallback", поэтому она может не работать на компьютерах, отличных от Windows.

0 голосов
/ 05 июня 2010

В каком контексте вам нужно это использовать? Строка генерируется следующим вызовом метода в ClientScriptManager: http://msdn.microsoft.com/en-us/library/ms153110%28v=VS.100%29.aspx

Использование этого - то, что вы можете использовать для создания вышеприведенного утверждения, без необходимости знать детали.

НТН.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...