Я пишу инструмент GIS-клиента на С# для извлечения "функций" в XML-схеме на основе GML (образец ниже) с сервера. Экстракты ограничены 100 000 функциями.
Я бы сказал, что самый большой файл extract.xml может получить около 150 мегабайт, поэтому очевидно, что DOM-парсеры отсутствуют, я пытался решить между XmlSerializer и XSD.EXE сгенерированные привязки --OR-- XmlReader и графический объект, созданный вручную.
Или, может быть, есть лучший способ, который я еще не рассмотрел? Как XLINQ, или????
Пожалуйста, кто-нибудь может мне помочь? Особенно в отношении эффективности памяти любого данного подхода. Если нет, мне придется "prototype" оба решения и проецировать их бок о бок.
Я немного креветка в .NET. Любое руководство будет высоко оценено.
Спасибо тебе. Кит.
Пример XML - до 100 000 из них, до 234 600 коордов на каждую функцию.
<feature featId="27168306" fType="vegetation" fTypeId="1129" fClass="vegetation" gType="Polygon" ID="0" cLockNr="51598" metadataId="51599" mdFileId="NRM/TIS/VEGETATION/9543_22_v3" dataScale="25000">
<MultiGeometry>
<geometryMember>
<Polygon>
<outerBoundaryIs>
<LinearRing>
<coordinates>153.505004,-27.42196 153.505044,-27.422015 153.503992 .... 172 coordinates omitted to save space ... 153.505004,-27.42196</coordinates>
</LinearRing>
</outerBoundaryIs>
</Polygon>
</geometryMember>
</MultiGeometry>
</feature>