Ik wil data van de Ohloh / OpenHub API naar een CSV schrijven, en dat later weer parsen voor verdere bewerking. Ik doe deze Organization Collection call: https://github.com/blackd...rganization-collection.md , voor 2 pagina's, en stop dat na XML parsen in een struct:
Van eerder kende ik nog een prima CSV schrijver/lezer die makkelijk met objecten kan omgaan:
http://www.codeproject.co...ast-CSV-library-in-Csharp
Voor jullie gemak even de sourcecode: https://gist.github.com/anonymous/44366f1c7cd4abf405dd
En het wegschrijven van die 2 pagina's aan project structs naar CSV ging helemaal prima
Maar vervolgens:
Dit komt in een oneindige loop terecht. Er komen geen exceptions en er wordt niks naar de console geschreven. Bij een breakpoint zetten op de 'var test' regel, en ik klik op "expand results" ding in debug tooltip van Visual Studio, dan zegt hij iets van "timed out".
Wat heb ik zelf al geprobeerd?
Intern roept die foreach MoveNext() aan. Voor jullie gemak, nogmaals de sourcecode. In die methode lijkt goed gevuld te worden. Netjes een array van 9, met strings, die lijken te kloppen.
Ik vermoed dat die setters niet helemaal lekker lopen. Die zouden moeten vullen in regel 425 van de gist, maar dat is wat lastig debuggen omdat ze on-the-fly aangemaakt worden. Hoe debug ik dit handig?
edit: nog een extra vraagje: waarom resulteert dit in die oneindige loop, en niet gewoon null values?
C#:
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
| namespace DataGatheringApplication.Structs.Api { public struct OrganizationCollectionItem { public int AffiliatedCommitters; public DateTime CreatedAt; public string Homepage; public string Name; public int ProjectsCount; public string Type; public DateTime UpdatedAt; public string UrlName; public string XmlUrl; public OrganizationCollectionItem(string name, string xmlUrl, DateTime createdAt, DateTime updatedAt, string homepage, string urlName, string type, int projectsCount, int affiliatedCommitters) { Name = name; XmlUrl = xmlUrl; CreatedAt = createdAt; UpdatedAt = updatedAt; Homepage = homepage; UrlName = urlName; Type = type; ProjectsCount = projectsCount; AffiliatedCommitters = affiliatedCommitters; } } } |
Van eerder kende ik nog een prima CSV schrijver/lezer die makkelijk met objecten kan omgaan:
http://www.codeproject.co...ast-CSV-library-in-Csharp
Voor jullie gemak even de sourcecode: https://gist.github.com/anonymous/44366f1c7cd4abf405dd
En het wegschrijven van die 2 pagina's aan project structs naar CSV ging helemaal prima
C#:
1
2
3
4
5
| var test = CsvFile.Read<OrganizationCollectionItem>(DataLocation + filename + ".csv"); foreach (var item in test) { Console.WriteLine(item.UrlName); } |
Dit komt in een oneindige loop terecht. Er komen geen exceptions en er wordt niks naar de console geschreven. Bij een breakpoint zetten op de 'var test' regel, en ik klik op "expand results" ding in debug tooltip van Visual Studio, dan zegt hij iets van "timed out".
Wat heb ik zelf al geprobeerd?
Intern roept die foreach MoveNext() aan. Voor jullie gemak, nogmaals de sourcecode. In die methode lijkt
fieldValues
Ik vermoed dat die setters niet helemaal lekker lopen. Die zouden
Current
edit: nog een extra vraagje: waarom resulteert dit in die oneindige loop, en niet gewoon null values?
IMDB vote history | Next-gen OS, audio en video player, search engine en Movie DB