2010-10-15 3 views
0

Cela n'a pas fonctionné et je pense que ce ne sera pas mais je voulais vous demander (dernière chance).Méthode de service web d'embarquement au .ascx (contrôle de l'utilisateur)

J'ai un simple fichier ascx. Il a un élément de sélection qui récupère les sous-catégories lorsqu'il est sélectionné (sur le service Web). Je veux écrire ma méthode web dans le fichier ascx.cs au lieu d'écrire dans un autre fichier asmx.

fichier ASCX.CS

protected void public Page_Load(....){ 
    //(because i can't give the ascx file path :) 
    TheAspxFileWhichContainsMyUserControl = Request.Url.LocalPath 
} 

[WebMethod] 
static public string f_GetSubCats(int _iCatId){ 
    return "<select><option value=1>One</option></select>"; 
} 

fichier ASCX:

<script type="..."> 
    $.ajax({ 
     url: "<%=TheAspxFileWhichContainsMyUserControl%>/f_GetSubCats", 
     data:... 
     ........... 
     success: function(msg){ 
      // append new select to the container 
     } 
    }) 
</script> 
+0

Non, ça ne va pas au travail. Vous devez créer un service Web ASMX approprié, afin que IIS puisse le traiter en conséquence. (une page ASPX ne peut pas gérer une demande de service Web - aucun proxy n'a été créé). Aussi - vous devez décorer votre WebMethod avec '[ScriptService]' afin qu'il puisse être appelé par AJAX. – RPM1984

Répondre

Questions connexes