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

Services Web Discussion :

Problème avec string[]:cannot implicitly convert type 'string' to 'string[]'


Sujet :

Services Web

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2010
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 18
    Points : 20
    Points
    20
    Par défaut Problème avec string[]:cannot implicitly convert type 'string' to 'string[]'
    Salut à vous tous,
    Voila, Je voudrai réaliser un web service qui renvoi un table de string(affichage des noms), Mais lorsque je debug il m'affiche l'erreur suivante:
    Cannot implicitly convert type 'string' to 'string[]'
    et voila le code:

    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
            private void Form1_Click(object sender, EventArgs e)
            {
    
                     MySW.ServiceSoapClient mySoap = new MySW.ServiceSoapClient();
    
                     // ici l'erreur
    
                     string[] myReturnedStrings = mySoap.SomeMethod();
                     MessageBox.Show("Result:", myReturnedStrings[0],
                     myReturnedStrings[1]);
    
    }
    Web Service
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    public string[] SomeMethod()
    {
    string[] myStringArray = new string[2];
    myStringArray[0] = "Hello";
    myStringArray[1] = "Goodbye";
    return myStringArray;
    }
    Merci de vos conseils

    Cordialement

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 753
    Points
    39 753
    Par défaut
    Bizarre, pourtant la signature de la méthode et son utilisation semblent correctes... Essaie de mettre à jour la référence de service (clic droit sur la référence dans l'explorateur de solution, "update service reference")

  3. #3
    Membre expert
    Avatar de GuruuMeditation
    Homme Profil pro
    .Net Architect
    Inscrit en
    Octobre 2010
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : .Net Architect
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 705
    Points : 3 570
    Points
    3 570
    Par défaut
    Voila peut-etre une réponse :
    http://www.kerrywong.com/2006/11/04/...se-in-vs-2005/

    En gros, il dit de générer soit-même les classes proxy, et de regarder si il ne cree pas incorrectement des arrays[][] au lieu de array[]

  4. #4
    Membre à l'essai
    Inscrit en
    Juin 2010
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 18
    Points : 20
    Points
    20
    Par défaut
    Merci pour vos réponses, EquinoxeDotNet, j'ai pas compris ce qui a écrit sur le site, je suis un débutant mais j'essaye quand même le lire, et j'ai le "update service reference" que tomlev a dit et voila l'erreur qui apparait:
    Cannot implicitly convert type MySW.ArrayOfString' to 'string[]'

  5. #5
    Expert confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2009
    Messages
    2 032
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2009
    Messages : 2 032
    Points : 5 470
    Points
    5 470
    Par défaut
    Il semblerait que le proxy généré MySW( lorsque tu fais un aout de service reference), créé un "ArrayofString".
    Essaye donc de voir les methodes de cette ArrayOfString, peut être même qu'il suffit juste de changer le type de MyReturnedStrings :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    private void Form1_Click(object sender, EventArgs e)
            {
     
                     MySW.ServiceSoapClient mySoap = new MySW.ServiceSoapClient();
     
                     // ici l'erreur
     
                     ArrayOfString myReturnedStrings = mySoap.SomeMethod();
                     MessageBox.Show("Result:", myReturnedStrings[0],
                     myReturnedStrings[1]);

Discussions similaires

  1. Réponses: 1
    Dernier message: 10/05/2015, 02h29
  2. Réponses: 5
    Dernier message: 01/05/2012, 13h25
  3. Réponses: 6
    Dernier message: 20/08/2009, 16h06
  4. Réponses: 3
    Dernier message: 21/08/2008, 13h33
  5. Problème String cannot be converted
    Par Mvu dans le forum ASP.NET
    Réponses: 2
    Dernier message: 11/07/2008, 15h34

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