【问题标题】:Query xml file by attribute in .net在.net中按属性查询xml文件
【发布时间】:2012-01-26 22:35:12
【问题描述】:

如何使用 C# .NET 2.0 查询 xml 文件,如下面的文件?我有 id 值,需要获取与该 id 相关的缩略图。

<root>
    <categories>
        <category title="decking">
            <photos>
                <photo id="1" smallphoto="/files/images/photogallery/thumbs/EarthwoodEvolutions1_thumb.jpg"  />
                <photo id="2" smallphoto="/files/images/photo-gallery/thumbs/XLM401_thumb.jpg"  />
            </photos>
        </category>
    </categories>
</root>

【问题讨论】:

    标签: c# .net xml .net-2.0


    【解决方案1】:

    你可以使用 XmlDocument

    http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.aspx

    并使用 xpaths 查找所需的节点。

    对于您的情况,例如:

    root/categories/category/photos/photo[@id='1']
    

    【讨论】:

    • 谢谢这么简单,但总是忘记语法。
    【解决方案2】:

    您可以使用XmlDocumentSelectNodes(),例如:

    XmlDocument doc = new XmlDocument();  
    doc.Load(xmlFilename);
    
    XmlNodeList nodes = doc.SelectNodes("/root/categories/category/photos/photo[@id='" + photoId + "']");
    XmlNode photoNode = nodes.Item(0);
    // Use thumbnail in photoNode.Attributes["smallphoto"].InnerText
    

    【讨论】:

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