gpt4 book ai didi

silverlight - XDocument - 获取节点值列表

转载 作者:行者123 更新时间:2023-12-04 05:36:54 28 4
gpt4 key购买 nike

我有一个像这样的 XDocument:

<LookupList>
<ImageInfo1>
<FieldID>1057</FieldID>
<FieldName>Lookup_test</FieldName>
<LookupText>open</LookupText>
</ImageInfo1>
<ImageInfo1>
<FieldID>1057</FieldID>
<FieldName>Lookup_test</FieldName>
<LookupText>Waiting for input</LookupText>
</ImageInfo1>
<ImageInfo1>
<FieldID>1057</FieldID>
<FieldName>Lookup_NEW_NAME</FieldName>
<LookupText>Closed</LookupText>
</ImageInfo1>
</LookupList>

我想得到
  • 唯一 FieldName(s) 和
  • 的数量和值
  • 每个 FieldName 的 LookupText 列表。

  • 有人可以给我一个提示如何去做吗?

    最佳答案

    首先,您需要知道如何从 XDocument 中读取元素:

    public void ReadXDocument(XDocument doc)
    {
    foreach (XElement el in doc.Descendants("ImageInfo1"))
    {
    string fieldid = el.Element("FieldID").Value;
    string fieldName = el.Element("FieldName").Value;
    string lookupText = el.Element("LookupText").Value;
    }

    一旦你知道了这一点,使用 Linq 来实现你的目标就相对简单了。

    这应该给你一个不同的 FieldNames 列表:
        List<String> distinctNames = doc.Descendants("ImageInfo1")
    .Select(o => o.Element("FieldName").Value)
    .Distinct().ToList();

    这应该为您提供每个 FieldName 的 LookupText 值集合
        IEnumerable groups = doc.Descendants("ImageInfo1")
    .GroupBy(o => o.Element("FieldName").Value)
    .Select(o => new { Key = o.Key, Lookups = o.ToList() });
    }

    关于silverlight - XDocument - 获取节点值列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11815134/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com