本文介绍了将XML转换为通用列表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试将XML转换为List

I am trying to convert XML to List

<School>
  <Student>
    <Id>2</Id>
    <Name>dummy</Name>
    <Section>12</Section>
  </Student>
  <Student>
    <Id>3</Id>
    <Name>dummy</Name>
    <Section>11</Section>
  </Student>
</School>

我使用LINQ尝试了几件事,但在进行过程中不清楚.

I tried few things using LINQ and am not so clear on proceeding.

dox.Descendants("Student").Select(d=>d.Value).ToList();

我得到2,但值类似于2dummy12 3dummy11

Am getting count 2 but values are like 2dummy12 3dummy11

是否可以将上述XML转换为具有Id,Name和Section属性的Student类型的通用列表?

Is it possible to convert the above XML to a generic List of type Student which has Id,Name and Section Properties ?

实现此目标的最佳方法是什么?

What is the best way I can implement this ?

推荐答案

您可以创建匿名类型

var studentLst=dox.Descendants("Student").Select(d=>
new{
    id=d.Element("Id").Value,
    Name=d.Element("Name").Value,
    Section=d.Element("Section").Value
   }).ToList();

这将创建一个匿名类型列表.

This creates a list of anonymous type..

如果要创建学生类型列表

If you want to create a list of Student type

class Student{public int id;public string name,string section}

List<Student> studentLst=dox.Descendants("Student").Select(d=>
new Student{
    id=d.Element("Id").Value,
    name=d.Element("Name").Value,
    section=d.Element("Section").Value
   }).ToList();

这篇关于将XML转换为通用列表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-29 02:21