如何从文件系统中读取大量XML文件

时间:2012-09-04 07:24:52

标签: c# asp.net linq-to-entities linq-to-xml

让我们假设,我有一组国家(超过100个)。每个国家都可以有很多州。每个州在文件系统中都有一个xml文件。我必须根据xml文件中存在的国家,州或任何Id等参数搜索这些xml文件。

文件系统中的xml文件结构:

<Country code="in">
    <States Name="Delhi">
        <Subscriptions>
                <Subscription Id="100" Code="ABC">
                         ...
                        </Subscription>
                        <Subscription Id="101" Code="XYZ">
                         ...
                        </Subscription>
            </Subscriptions>
        </States>
</Country>

文件结构(国家/地区文件夹 - &gt;州文件夹 - &gt; Subscription.xml文件):

US -> California-> Subscription.xml
US -> Alaska-> Subscription.xml
In -> Delhi -> Subscription.xml
In -> Tamil Nadu -> Subscription.xml

。 。

例如:如果用户搜索id = 100,我必须查看每个States文件夹中的每个国家/地区文件夹...在每个Subscription.xml文件中,如果是否存在ID为100。 / p>

请分享您对如何使用C#实现搜索功能的想法。

1 个答案:

答案 0 :(得分:3)

如果数据不会改变,你可以将它全部加载到内存中的对象图中并自己实现搜索。如果有100个国家/地区,每个国家/地区有100个州,每个国家/地区有100个订阅,那么只有100万个对象不会过于繁重。

如果您想支持对数据的更改,那么您将需要某种数据库。

如果您希望您执行的搜索具有灵活性,或者您希望稍后调整架构,我会再次建议使用数据库。