【问题标题】:Retrieve the XML "id" attribute value when given an element给定元素时检索 XML“id”属性值
【发布时间】:2020-12-21 20:47:39
【问题描述】:

感谢您阅读本文。我需要在 XML 文档中获取 <table> 元素的名称,并使用这些名称在 winform 上填充组合框。我正在尝试在 c# 中创建一个方法来检索基于 xml 结构的“id”属性的值:

<root>
     <object>
          <objects>
               <table id="tableName">
               </table>
          </objects>
     </object>
</root>

我查看了 Microsoft 文档站点,发现了一些关于 getelementbytagname 或 getelementbyid 的内容。那些很接近,但他们没有给我我需要的信息。我还尝试在使用 xpath 的方法中找到它们以检索数据,但我无法让它工作。这可能是超级初级,但我已经在网上搜索了两天,无法弄清楚。任何帮助将不胜感激。

【问题讨论】:

    标签: c# xml xpath methods


    【解决方案1】:

    您可以使用 Linq To XML 解析(或加载,如果它是一个 .xml 文件)并得到您想要的。有了这非常少的数据,就无法识别,但这会让您开始:

    void Main()
    {
        string myXML = @"<root>
         <object>
              <objects>
                   <table id=""tableName"">
                   </table>
              </objects>
         </object>
    </root>";
    
        var ids = XElement.Parse(myXML).DescendantsAndSelf("table")
                  .Where(xe => xe.Attribute("id") != null)
                  .Select(xe => (string)xe.Attribute("id"));
                  
        foreach (var id in ids)
        {
            Console.WriteLine(id);
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多