2010-02-24 7 views
0

Existe-t-il un moyen de transmettre un paramètre querystring à PageMethods? J'ai cette exigence parce que dans l'AjaxMethod j'utilise certaines classes qui dépendent d'une chaîne de requête particulière étant présent.
Si j'utilise Asp.Net ScriptManager, PageMethods est-il un moyen de passer le paramètre querystring du javascript à la méthode Web Ajax?Comment passer le paramètre QueryString à PageMethods?

Exemple: Je dois accéder au paramètre de requête comme indiqué ci-dessous.

[WebMethod(true)] 
public static string AjaxMethod(string name) 
{ 
    string Id = HttpContext.Current.Request.QueryString["SomeID"]; 
    return message + " " + name; 
} 

Répondre

1

Utilisez window.location.search pour passer la chaîne de requête (vous pouvez supprimer le premier caractère - le point d'interrogation).

Si vous ne souhaitez pas utiliser la chaîne de requête de la page en cours mais ajouter une chaîne de requête à l'URL d'une méthode de page, vous devez probablement utiliser un wrapper pour le rappel ajax. Je ne pense pas que cette fonctionnalité soit supportée par le proxy généré. Nous avons utilisé la même approche pour que notre projet puisse annuler l'appel de la méthode page - utilisez simplement un wrapper jquery/prototype et vous avez plus de puissance d'expression;)

+0

Mais cela ne définira pas de valeur dans HttpContext.Current.Request. QueryString ["SomeID"] – Amitabh

+0

voir mon édition pour cela;) –

Questions connexes