【发布时间】:2017-02-02 23:44:26
【问题描述】:
我的 XML 看起来像这样。我有一个节点状态,这个状态可以在随机父节点下多次。但我想在我的 XML 中搜索每个状态,并在变量中捕获值说批准。我怎样才能做到这一点?此外,一旦我收集了所有状态,我希望它们存储在数据库中。基本上,我想在我的 XML 中查找所有状态并捕获这些值。
<loop1>
<loop2>
<ID>001</ID>
<status code="A">approve</status>
</loop2>
</loop1>
感谢任何帮助!
我尝试了以下代码 -
XmlDocument xDoc = new XmlDocument();
xDoc.LoadXml(xmlValue);--xmlValue has my XML file content
XmlElement xelRoot = xDoc.DocumentElement;
XmlNodeList xnlNodes = xelRoot.SelectNodes("/status");
foreach (XmlNode xNode in xnlNodes)
{
string ostatus = xNode["status"].InnerText;
}
但是当我尝试读取内部文本时,我收到错误对象引用未设置实例。
【问题讨论】:
-
您是否已经尝试过?你能给我们看一些代码吗?
-
您想在 C# 应用程序中执行此操作还是数据库系统应解决此问题(哪个 RDBMS - 产品和版本)?您可能会阅读有关 深度搜索
XPath的信息,例如//status... -
我尝试使用 XMLelement 和 XMLdocument,但是当我尝试提取状态时,它给出的对象引用未设置为实例错误。我基本上想捕获所有状态值,然后检查数据库是否status isapproved, then bla bla else if status is denied 然后 bla bla
标签: c# sql xml visual-studio