错误:基于内存的XML文档中的“完成此操作所需的数据尚不可用”

时间:2019-09-10 13:38:37

标签: vb.net xml-parsing

我有一个VB.Net程序,该程序使用XML文档作为控制规则。程序加载时,它作为公共字符串存储在代码本身中:

Public CMIstring As String
CMIstring = "<?xml version='1.0' ?>
<cmi>
<_CMItypes>
<_CMItype>CMIBlank</_CMItype>
.... lots more suff
</cmi>

xDoc = New MSXML2.DOMDocument60
If xDoc.loadXML(CMIstring) Then
   do other housekeeping here... which it does
end if

它可以在一段时间(小时/天)内正常运行,没有问题。但是,定期在以下行中显示错误“完成此操作所需的数据尚不可用”:

nList = xDoc.getElementsByTagName(sAry(i - 1))  'ERROR HERE

sAry似乎具有正确的值,但是每次它碰到那条线时我都会记录这些值,因此到目前为止,我确定并没有任何知识。我倾向于认为字符串数组sAry中有些东西,但是如果不正确,似乎会抛出一个奇怪的错误。

有人知道为什么会在静态xml文档中有效触发此错误吗?我应该寻找什么?

编辑9/15/19: 错误相同,位置不同。

xDoc = New MSXML2.DOMDocument60
If xDoc.loadXML(CMIstring) Then
    mList = xDoc.getElementsByTagName("cmi") 'Error on this line

那么,如果xDoc已加载,怎么还不可用?有没有可以检查的属性来确保xDoc不仅被加载而且“可用”?

0 个答案:

没有答案