我基于此站点上的先前讨论开始此操作: 在 XML 文档中查找兄弟属性
我也在使用 Wonderware,并且有一个字符串阅读器用于检索我需要的标签。我的字符串如下所示:
<ItemsList>
<Item Name="soapsystemstaus" Alias="112MIX622_TIME.Barbe_Soap"/>
<Item Name="strSystemDateTime" Alias="112MIX622_TIME.NowMinute"/>
</ItemsList>
这是我试图运行的代码:
dim ItemDBXMLString as string;
dim doc as System.Xml.XmlDocument;
dim SR as System.IO.StringReader;
dim XdbInd as indirect;
XdbInd.BindTo( Me.DIO.Name + "." + Me.DIO.ScanGroup + ".AliasDatabase" );
ItemDBXMLString = XdbInd;
doc = new System.Xml.XmlDocument;
SR = new System.IO.StringReader(ItemDBXMLString);
try
doc.Load(SR);
LogMessage(System.String.Format("SR Loaded into doc! <<<=== ******"));
注意:间接是一种变量,可以用作引用其他区域内容的指针,因此基本上:
XdbInd.BindTo( Me.DIO.Name + "." + Me.DIO.ScanGroup + ".AliasDatabase" );
ItemDBXMLString = XdbInd;
创建对包含我在本文开头显示的字符串的内存区域的引用。如何将此字符串加载到 Xml 文档中是我提出问题的原因。当我收到指令时:“doc.Load(SR);” 我收到一个错误:
System.Xml: The URL cannot be empty. Parameter name: url
在我的无知中,我从来不知道我必须指定一个 url 才能读取 Xml,一直认为 Xml 是一种数据传输工具。尝试在 XmlDocument 中加载 Xml 时,有没有其他人遇到过类似的错误?非常感谢任何帮助或提示。(System.IO.StringReader等全部声明的原因是Wonderware脚本语言中缺少Imports,除了语言,还支持.Net framework 4.5)