Une classe vers un web service

cs_kmikaz Messages postés 34 Date d'inscription vendredi 22 mars 2002 Statut Membre Dernière intervention 2 mai 2006 - 29 juil. 2005 à 11:58
cs_kmikaz Messages postés 34 Date d'inscription vendredi 22 mars 2002 Statut Membre Dernière intervention 2 mai 2006 - 29 juil. 2005 à 13:14
Salut,



Je développe en ce moment un web service pour permettre
l'enregistrement à distance de commande sur un serveur. J'aimerais
savoir si les webmethods peuvent prendre en paramètre des types plus
complexes que les types standards (je veux dire une classe par exemple).

En clair, est il possible de passe par exemple une classe du style

public class SomeStuffs

{

private string stuffName = string.Empty

private ArrayList stuffComps;

public SomeStuffs()

{

stuffComps = new ArrayList();

}

public ArrayList STUFFS

{get {return stuffComps;}

public void AddStuff(string _what)

{

stuffComps.Add(what);

}

}

et à mon webservice pourrais je faire ceci?

SomeStuffs ss = new SomeStuffs()

ss.Add("Un");

ss.ADD("Deux");



ServiceWeb1 sw = new ServiceWeb1();

sw.ProcessStuffs(ss);



Si cela est possible que faut il comme conditions?

2 réponses

SharpMao Messages postés 1024 Date d'inscription mardi 4 février 2003 Statut Membre Dernière intervention 7 juin 2010 69
29 juil. 2005 à 13:01
Hello,

c'est tout à fait possible, pour autant que ta classe SomeStuf soit sérializable.

Amicalement, SharpMao
0
cs_kmikaz Messages postés 34 Date d'inscription vendredi 22 mars 2002 Statut Membre Dernière intervention 2 mai 2006
29 juil. 2005 à 13:14
Ok merci SharpMao,



mais dis moi à ce moment là faut il que le web service contienne la
classe aussi bien que le client aussi? Parceque pour que j'ai une
méthode du webservice qui aura une signature comme ceci par exemple

void serviceWeb1.ProcessStuffs(SomeStuffs val),

je suppose qu'il faudra que le client aussi bien que le web
service contiennent une classe exactement pareille! Sinon je ne
pourrais pas déclarer l'argument au niveau du web service et je ne
pourrais pas non plus appeler la methode au niveau du client!

Merci d'avance
0