【发布时间】:2011-10-27 23:32:49
【问题描述】:
我正在使用 XDocument 和 LINQ 来解析一些 XML 文件,其中一些运行良好,而另一些则没有。研究了一下,我发现了不同之处:
有效的文件如下所示:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Scenarios xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Scenario>
...
</Scenario>
</Scenarios>
看起来不像这样的文件:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Scenarios xmlns="http://www.w3.org/2001/XMLSchema-instance">
<Scenario>
...
</Scenario>
</Scenarios>
如果没有看到,则缺少的元素是根元素中的 :xsi 别名。
我只是想知道为什么会这样。 XDocument.Load() 不会解析其他方面相同的文件,除非它们具有该别名。
提前致谢!
【问题讨论】:
-
“不会被解析”是什么意思?究竟会发生什么?它会抛出一些异常吗?您是否有任何在 XML 中使用前缀
xsi:的元素不起作用?
标签: xml linq linq-to-xml