Requete Ajax multiple via ClientCallBack
Le problème était que la personne voulait faire plusieurs requêtes AJAX en même temps, malheureusement seulement la derniere requete arrivait à finir. Je commence donc à analyser le code javascript générer par ASP.net et particulierement la fonction
function
WebForm_DoCallback(eventTarget, eventArgument, eventCallback, context, errorCallback, useAsync) {
A l'intérieur de cette fonction il y a ce bout de code :
if (!useAsync) {
if (__synchronousCallBackIndex != -1) {
__pendingCallbacks[__synchronousCallBackIndex] = null;
}
__synchronousCallBackIndex = callbackIndex;
}
Ce code supprime la derniere requete ajax non "useAsync" c'est donc la qu'etait le problème. Par défaut useAsync est à false pour le mettre à true il suffit de le spécifier dans la méthode getCallBackEventReference
Page.ClientScript.GetCallbackEventReference(
Me, GetRequestArguments, "OnCallBackEnd", Me.UniqueID, True)
on rajoutant le dernier argument à true on peut désormais faire des requetes ajx en parrallèle :)
Mais j'ai quand meme une petite remarque sur la facon d'annuler la requete Ajax. En effet cette facon de faire supprime l'objet sans meme lui demander son avis, alors que l'objet XMLHttpRequest possede l'objet abort ...