IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

PageMethods et ASP.NET


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné Avatar de jacky01
    Profil pro
    Développeur .NET
    Inscrit en
    Juin 2007
    Messages
    537
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juin 2007
    Messages : 537
    Par défaut PageMethods et ASP.NET
    Bonjour,

    J'essaie d'appeler un méthode de mon webservice via le JS mais j'ai un problème majeur que je n'arrive pas à résoudre.

    En fait pour appeler mon traitement il faut que j'utilise "PageMethods" comme l'explique ce site : http://www.sebastien-bouez.net/aspne...u-code-client/ hors mon Visual ne me le propose et pour cause si je le met à la main celà ne fonctionne pas, il me dit q'il est indéfini.

    Y a-t-il une truc a rajouter pour qu'il me le trouve ? qu'ai-je manqué ?

    voici un bout de mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <%@ Master Language="C#" AutoEventWireup="true" CodeBehind="MP_Princ.master.cs"  Inherits="monappli.MP_Principal" %>
     
    <%@ Register Assembly="CrystalDecisions.Web, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"
        Namespace="CrystalDecisions.Web" TagPrefix="CR" %>
     
    <%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="ajax" %>
    <%@ Register Assembly="Controls" Namespace="Controls" TagPrefix="CustomControls" %>
     
     
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
     
    <script type="text/javascript">
     function SayHello() {
        PageMethods.SayHello("Bill", OnWSRequestComplete);
    }
    </script>
    et le code du webservice

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    using System;
    using System.Collections;
    using System.ComponentModel;
    using System.Data;
    using System.Linq;
    using System.Web;
    using System.Web.Services;
    using System.Web.Services.Protocols;
    using System.Xml.Linq;
     
    namespace L_Services
    {
        /// <summary>
        /// Description résumée 
        /// </summary>
        [WebService(Namespace = "http://tempuri.org/")]
        [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
        [ToolboxItem(false)]
        // Pour autoriser l'appel de ce service Web depuis un script à l'aide d'ASP.NET AJAX, supprimez les marques de commentaire de la ligne suivante. 
        [System.Web.Script.Services.ScriptService]
        public class UserActivity : System.Web.Services.WebService
        {
     
            [WebMethod]
            public static string SayHello(string v)
            {
                return "Bonjour " + v;
            }
        }
    }
    NB : J'ai bien un script manager mais apres la déclaration des fonction JS
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <asp:ScriptManager ID="SM1" runat="server" EnablePartialRendering="true" EnableScriptGlobalization="true" EnablePageMethods="true" EnableScriptLocalization="true"></asp:ScriptManager>

  2. #2
    Membre confirmé
    Profil pro
    Développeur Web
    Inscrit en
    Septembre 2007
    Messages
    173
    Détails du profil
    Informations personnelles :
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2007
    Messages : 173
    Par défaut
    Bonjour,

    Pourquoi passe tu par du JS?
    Tu pourrais directement appeler tes Webmethod dans ton C# en ajoutant la référence de ton service à ton projet.

    Il suffit pour cela de faire un clic droit sur ton projet, ajouter une référence de service et saisir l'URL du service.

    Il faudra ensuite créer une instance de ton web service grâce à laquelle tu aura accès à tes méthodes.

    A+

  3. #3
    Membre chevronné Avatar de jacky01
    Profil pro
    Développeur .NET
    Inscrit en
    Juin 2007
    Messages
    537
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juin 2007
    Messages : 537
    Par défaut
    Merci pour ta réponse mais cela ne convient pas car dans mon cas présent il fait que ce soit le client qui l'appel pour mettre a jour la base, en fait l'objectif final est de réaliser un système qui me permette de savoir si l'utilisateur est tjrs la ou s'il a quitté son explorer a la sauvage.

    J'espère que c'est clair

  4. #4
    Membre confirmé
    Profil pro
    Développeur Web
    Inscrit en
    Septembre 2007
    Messages
    173
    Détails du profil
    Informations personnelles :
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2007
    Messages : 173
    Par défaut
    Jette un coup d'oeil sur cette page.

    Je pense que tu y trouvera ton bonheur.

    A+

  5. #5
    Membre chevronné Avatar de jacky01
    Profil pro
    Développeur .NET
    Inscrit en
    Juin 2007
    Messages
    537
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juin 2007
    Messages : 537
    Par défaut
    Je te remercie encore une fois mais il doit me manquer une reférence dans mon projet ou un register je n'en sais rien mais il me manque beaucoup de chose notamment sur le dernier exemple que tu ma donné, il ne trouve pas le "service."

    Je n'y connais pas grand chose encore en javascript et je ne sais pas comment faire pour que VS me propose ces éléments manquant (service.useService par exemple).

    J'ai même regarder les sources de l'exemple sur http://www.codeproject.com/KB/XML/ma...eScript01.aspx et même avec ça je ne comprend toujours pas

    Quelqu'un peut-il m'éclairer ?

  6. #6
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Tu passes à côté de pas mal de choses de là.
    PageMethod est utilisée pour appeler une méthode de la page définie dans le code behind. Toi, tu essayes d'appeler une web method d'un web service. Ca peut pas marcher.
    Ensuite PageMethod ne fonctionne que pour une page web. Ca ne fonctionne pas dans un UserControl par exemple. Donc je pense que ça ne fonctionne pas pour une MasterPage.

    Si tu veux appeler un web service en javascript (côté client donc), t'as 2 solutions faciles à mettre en oeuvre:
    1- tu fais ça avec jQuery
    2- tu fais ça avec ASP.NET AJAX

Discussions similaires

  1. Choisir PHP ou ASP.NET ?
    Par discogarden dans le forum Général Conception Web
    Réponses: 81
    Dernier message: 31/12/2009, 18h11
  2. [CR][ASP.NET] Impression en format "paysage"
    Par David.V dans le forum SAP Crystal Reports
    Réponses: 4
    Dernier message: 24/04/2004, 22h56
  3. [CR][ASP.NET] Problème d'affichage du rapport
    Par David.V dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 20/04/2004, 12h39
  4. [CR][ASP.NET] Un champ avec plusieurs polices...
    Par David.V dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 08/04/2004, 14h19
  5. Driver postgre pour asp.net
    Par vonbier dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 02/10/2003, 13h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo