.net LINQ是否保证从XDocument读取的项目顺序?

.net LINQ是否保证从XDocument读取的项目顺序?,.net,xml,linq,.net,Xml,Linq,因此,我所做的是使用xml文档来确定数据库更新运行某些SQL脚本的顺序 XML遵循这种格式 <ScriptRules> <Database databaseName = “string”> <Folder folderPath = “string” executeAllFiles = boolean> <file order=”first or last”>“Filename”</file>

因此,我所做的是使用xml文档来确定数据库更新运行某些SQL脚本的顺序

XML遵循这种格式

<ScriptRules>
    <Database databaseName = “string”>
        <Folder folderPath = “string” executeAllFiles = boolean>
            <file order=”first or last”>“Filename”</file>
        </Folder>
    </Database>
</ScriptRules>

“文件名”
因此,执行数据库上所有
sql
文件的类会在更改其连接时查看这些文件,并根据配置文件的指示执行文件夹中的文件

现在我的问题是:

假设我有一个文档,它有4个
数据库
节点,每个节点都有
n个
文件夹
节点,其中包含一系列
文件
节点

如果在
数据库
节点上的每个
循环的
内部,我使用
Database.Elements(“Database”)
检索到
元素
,那么假设它们将按照它们在xml文件中出现的顺序被提取,这符合逻辑吗?(与文件节点相同)


据我所知,情况确实如此,但我只是想在开始在生产数据库上使用它之前进行验证。

是,
元素
按文档顺序返回元素。从,在“返回值”中:

XElement的
IEnumerable
包含孩子们的 具有匹配的
XName
XContainer
, 按文件顺序


是的,只要您不使用PLINQ,即使这样,您也可以要求它按顺序为您提供元素

 var orderedCities = (from city in cities.AsParallel().AsOrdered()
                                 where city.Population > 10000
                                 select city)
                                .Take(1000);

你是否有“有人问了一个关于linq的问题”的感觉?