如何从 XML 文档中提取数据

how to extract data from an XML document

我有两个 classes,分别称为 Movie 和 Movie Type,我正在尝试根据给定的示例 xml.

创建 classes 的对象
public class Movie
{
  public string title;
  public string rating; //can always convert.toin32 later
}

public class Genre
{
 int id;
 string genreType;
}

我想根据以下 XML 创建 class 的对象,best/fastest 方法是什么?

<movie> 
<title> se7en </title> 
<genre> thriller</genre> 
<rating> 18 </rating> 
</movie> 
<movie> 
<title> zodiac </title> 
<genre> thriller</genre> 
<rating> 18 </rating>
</movie>

试试这个

更好的是 LINQXML

XDocument document = XDocument.Load("MyDoc.xml");

List<Movie> statusList = (from movies in document.Descendants("Movie")
                           select new Movie()
                            {
                               title = movies.Element("title").Value,
                               rating = movies.Element("rating").Value,
                               genre = movies.Element("genre").Value
                            }).ToList();

或这个

var xml = @"<movie/>";
var serializer = new XmlSerializer(typeof(Movie));
using (var reader = new StringReader(xml))
{
    var movie = (Movie)serializer.Deserialize(reader);
}