Se connecter / S'enregistrer
Votre question

C# Problème API Wikipédia

Tags :
  • Microsoft
  • Programmation
Dernière réponse : dans Programmation
20 Mars 2010 14:08:37

Bonjour,
depuis quelques jours j'ai un petit projet qui semblera tout bête pour certains, mais je bloque sur un point.

Donc mon idée est de récupérer des articles sur wikipédia et de me les afficher sur un listbox ou autre. J'ai donc trouvé
ceci qui me donne un exemple de base avec l'api de wikipédia: http://wikipedia-lab.org/en/index.php/Wikipedia_API.

J'ajoute donc la "web référence" comme demandé sur le tutoriel (nommé référence de service en français si je me trompe pas) et je test le
bout de code fournit:

Code C# :

org.wikipedia_lab.Service service = new org.wikipedia_lab.Service();
uint iID = service.GetTopCandidateIDFromKeyword("Microsoft", "English");
DataSet ds = service.GetThesaurusDS(0, iID, 0, "English");
MessageBox.Show(ds.GetXml());



mais la ligne suivante pose problème
Code C# :

org.wikipedia_lab.Service service = new org.wikipedia_lab.Service();


J'ai bien compris que "org" n'est pas un type mais je ne sais pas comment le corrigé pour que je n'aie plus l'erreur.
Quelqu'un saurais il m'éclairer ?

Autres pages sur : probleme api wikipedia

Anonyme
21 Mars 2010 21:47:18

Bien le bonjour,
Ne t'inquiète pas le problème vient du fait qu'ils ont renommé leur service.
(Et du fait que tu ne fais pas attention lors de la lecture hihi :)  )

"org.wikipedia_lab" est le nom qui est donnée à la référence pour la démo, tu le vois sur cette image : http://wikipedia-lab.org/en/images/a/a9/Getting_vs2.png dans la case "Reference Name :". Dans mon cas j'ai préféré l'appeler "WikiServ".

D'autre part, lorsque tu importe la référence tu vois que la classe Service n'existe pas ! En effet il faut utiliser ServiceSoapClient que te propose l'intellisense. Voici le code que cela donne :

  1. WikiServ.ServiceSoapClient service = new WikiServ.ServiceSoapClient();
  2. uint iID = service.GetTopCandidateIDFromKeyword("Microsoft", "English");
  3. DataSet ds = service.GetThesaurusDS(0, iID, 0, "English");
  4. MessageBox.Show(ds.GetXml());
m
0
l
Contenus similaires
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS