>我有一个这样的xml文件:
<plist version="1.0">
<array>
<dict>
<key>Title</key>
<string>Chapters</string>
<key>Items</key>
<array>
<dict>
<key>Title</key>
<string>XYZ</string>
</dict>
<dict>
<key>Title</key>
<string>ABC</string>
</dict>
</array>
</dict>
<dict>
<key>Title</key>
<string>ChaptersONE</string>
<key>Items</key>
<array>
<dict>
<key>Title</key>
<string>ASDF</string>
</dict>
</array>
</dict>
</array>
我有这样的课程:
class Chapter
{
public string Title { get; set; }
public string SubTitle { get; set; }
}
如何解析此 xml 并分配给章节作为列表?
我尝试了以下方法:
List<Chapters> List = (from d in doc.Root.Element("array").Elements("dict")
select new HighwayCode
{
Title = (string)d.Element("string"),
SubTitle = d.Element("array")
.Elements("dict")
.Elements("string")
.Select(s => (string)s)
.ToList()
}).ToList();
但是这里的副标题是一个列表,但我需要它作为字符串
你的意思是逗号分隔的字符串?使用String.Join
:
List<Chapters> List = (from d in doc.Root.Element("array").Elements("dict")
select new HighwayCode
{
Title = (string)d.Element("string"),
SubTitles = String.Join(",", d.Element("array")
.Elements("dict")
.Elements("string")
.Select(s => (string)s))
}).ToList();