【问题标题】:How can i get value of attribute base on matched value?如何根据匹配值获取属性值?
【发布时间】:2015-01-02 07:28:50
【问题描述】:

我想根据匹配值获取属性值。这是我的 XML 文件

<Setup>
  <Include Type="Product">
    <Value uomid="8078">468922</Value>
    <Value uomid="8078">468908</Value>
  </Include>
</Setup>

所以,我想采用 uomid 基数作为匹配值。代码隐藏中的过程 例如:我设置参数值为:468922 所以我想要得到的结果是 468922 中的 8078,而不是 468908 中的 8087。谢谢

【问题讨论】:

  • 两个属性值相同。这是拼写错误吗?
  • 现在,我可以获取参数值,但是我不知道根据参数值获取元素值的方法。

标签: c# xml


【解决方案1】:

试试下面的代码:

SearchValue 是您要搜索的值。在您的情况下,它的“468922”

 public string ReturnAttribute(string SearchValue)
        {
            XDocument xdoc = XDocument.Load(@"C:\Tmp\test.xml");
            string ReturnValue = String.Empty;
            foreach (var item in xdoc.Descendants("Value"))
            {
                if (item.Value == SearchValue)
                {
                    ReturnValue=item.FirstAttribute.Value;

                }
            }
            return ReturnValue;
        }

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-07-27
  • 2023-03-03
  • 1970-01-01
  • 1970-01-01
  • 2011-11-20
相关资源
最近更新 更多