c#xml->;字典<;字符串,元组<;字符串,字符串,字符串>>;林克
本文关键字:字符串 gt lt 林克 元组 字典 c#xml- | 更新日期: 2023-09-27 17:59:40
我有这个XML文档
<?xml version="1.0" encoding="utf-8"?>
<Tag xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<data ID="1" Tag1="A" Tag2="123" Tag3="C" />
<data ID="2" Tag1="AB" Tag2="12C3" Tag3="D" />
</Tag>
我想把文档转换成字典类型<string, Tuple<string,string,string>>
所以基本上ID->Tag1,Tag2,Tag3
我知道有很多这样做的关键->价值:
var configDictionary = xdoc.Descendants("data").ToDictionary(
datum => datum.Attribute("ID").Value,
datum => datum.Attribute("value").Value);
但我需要在3个字符串中获取值。
这很简单。您所缺少的只是使用Tuple.Create
:声明元组
var configDictionary = xdoc.Descendants("data")
.ToDictionary(
datum => datum.Attribute("ID").Value,
datum => Tuple.Create(datum.Attribute("Tag1").Value,
datum.Attribute("Tag2").Value,
datum.Attribute("Tag3").Value));
请注意,这没有验证属性是否确实存在,需要添加这些属性。