login  Naam:   Wachtwoord: 
Registreer je!
 Forum

[C#] Xml in "stukken" lezen

Offline Ultimatum - 02/07/2009 21:51
Avatar van UltimatumPHP expert Ik moet een xml documenten uitlezen, maar omdat er ongeveer 500 nodes in staan die ik bij langs moet en overal een actie moet doen, wil ik ze per 50 splitsen als het ware. Want ik moet via een api data ophalen maar kan maar maximaal 100 records per keer zijn. Dit is wat ik heb maar krijg een timeout in de functie downloadXmlData. Dit zijn de functies die ik heb. Iemand die er zo een (grote) fout in ziet?

http://plaatscode.be/137036/

2 antwoorden

Gesponsorde links
Offline rambo - 03/07/2009 16:58
Avatar van rambo HTML beginner Is het niet gewoon de Timeout die je instelt voor je WebRequest? Krijg je buiten dat om nog Exceptions oid?
Offline Ultimatum - 05/07/2009 03:33 (laatste wijziging 06/07/2009 19:58)
Avatar van Ultimatum PHP expert Nee, daar heeft het niets mee te maken. Ik wil dus per 100 nodes in een xml file lezen omdat de api die ik gebruik niet meer dan 100 requests per keer aan kan
Ik heb het nu zo voor elkaar:
  1. private void getItems()
  2. {
  3. try
  4. {
  5. downloadedData = new byte[0];
  6.  
  7. int totalItems = this._itemsDocument.DocumentElement.ChildNodes.Count;
  8. XmlNodeList childNodes = this._itemsDocument.DocumentElement.ChildNodes;
  9.  
  10. int counter = 0;
  11. string[] items = new string[50];
  12.  
  13. foreach (XmlElement childNode in childNodes)
  14. {
  15. if (childNode.Attributes["typeID"].Value != null)
  16. {
  17. items[counter++] = childNode.Attributes["typeID"].Value;
  18. }
  19.  
  20. if (counter % 50 == 0)
  21. {
  22. this.downloadXmlData(url);
  23.  
  24. counter = 0;
  25. items = new string[50];
  26. }
  27. }
  28. }
  29. catch (Exception x)
  30. {
  31. MessageBox.Show("ERROR: " + x.Message);
  32. }
  33. finally
  34. {
  35. MessageBox.Show("Market prices have been updated");
  36. }
  37. }

Maar als er bijvoorbeeld 553 nodes zijn dan pakt hij de laatste 3 niet omdat hij dat alleen doet als het getal de modus van 50 is. Hoe kan ik dit oplossen?
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.152s