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

C# Discussion :

Appeler successivement le meme web service


Sujet :

C#

  1. #1
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2010
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2010
    Messages : 8
    Points : 11
    Points
    11
    Par défaut Appeler successivement le meme web service
    Bjr, je rencontre un problème de reférence à un objet null : "NullReferenceException".

    Au premier clic, le service est appelé et la combo se rempli. Mais lorsque je clique une deuxième fois, je recois le message d'erreur:
    "la référence d'objet n'est pas définie a une instance d'objet".

    Pour plus de clarté:

    Voici mon objet:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ProxyServiceContact.ContractContactClient serviceContac = new ProxyServiceContact.ContractContactClient();
    et voici comment je l'utilise:

    tout d'abord j'initialise le service :

    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
    serviceContac.GetGroupeCompleted += new EventHandler<ProxyServiceContact.GetGroupeCompletedEventArgs>(serviceContac_GetGroupeCompleted);
     
    void serviceContac_GetGroupeCompleted(object sender, ProxyServiceContact.GetGroupeCompletedEventArgs e)
     
    {
     
    //throw new NotImplementedException();
     
    Grpes = e.Result;
     
    MessageBox.Show("Grpes contient : " + Grpes.Length + " éléments");
     
    CMB_GroupAb.DataSource = null;
     
    CMB_GroupAb.DataSource = Grpes;
     
    }
    ensuite je l'utilise:
    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
     
    public void Lister_Groupe()
     
    {
     
    try
     
    {
     
    serviceContac.GetGroupeAsync();
     
    MessageBox.Show("operation reussie");
     
    }
     
    catch (TimeoutException te)
     
    {
     
    MessageBox.Show(this, te.Message, "Temps d'inactivité trop long - " + appTitle,
     
    MessageBoxButtons.OK, MessageBoxIcon.Hand);
     
    }
     
    catch (System.ServiceModel.CommunicationException ex)
     
    {
     
    MessageBox.Show(this, ex.Message, "La connexion au serveur a été interrompue - " + appTitle,
     
    MessageBoxButtons.OK, MessageBoxIcon.Hand);
     
    }
     
    catch (NullReferenceException ex)
     
    { 
     
    MessageBox.Show(this, ex.Message, "Vous appelez une reférence null - " + appTitle,
     
    MessageBoxButtons.OK, MessageBoxIcon.Hand);
     
    }
     
    catch (Exception ex)
     
    {
     
    MessageBox.Show(this, ex.Message, "Erreur inattendue - " + appTitle,
     
    MessageBoxButtons.OK, MessageBoxIcon.Hand);
     
    }
     
    finally
     
    {
     
    serviceContac = null;
     
    }
     
    }
    Quelqu'un aurait une suggestion à me faire? merci d'avance!

  2. #2
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2010
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2010
    Messages : 8
    Points : 11
    Points
    11
    Par défaut La solution etait toute simple
    La solution était toute simple

    il m'a suffit de remplacer la bloc finally de ma méthode de la manière suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    finally
    {
    serviceContac = null;
    }
    par le bloc

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    finally
    {
    serviceContac = new ProxyServiceContact.ContractContactClient();
    }
    et maintenant ca marche!

    Merci de votre aide!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Appel à une méthode de Web Service
    Par sillimi18 dans le forum Services Web
    Réponses: 1
    Dernier message: 13/06/2013, 20h28
  2. Appel dynamique d'un web service
    Par Kery971 dans le forum Développement Web avec .NET
    Réponses: 0
    Dernier message: 30/04/2012, 16h43
  3. Appel Client d'un web service
    Par nah_wah dans le forum Web & réseau
    Réponses: 1
    Dernier message: 16/08/2011, 18h18
  4. appel asynchrone d'un web Service
    Par barrada dans le forum Services Web
    Réponses: 3
    Dernier message: 04/11/2009, 14h56
  5. appel d'un java web service à partir d'une page web
    Par issamos4 dans le forum Services Web
    Réponses: 2
    Dernier message: 31/05/2007, 14h26

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