MVC4应用程序中存在XML文档错误

本文关键字:文档 错误 XML 存在 应用程序 MVC4 | 更新日期: 2023-09-27 18:21:09

获取以下错误。似乎有很多可能的原因来自其他线程。我一直保持我的代码尽可能简单。

    There is an error in XML document (2, 2).
    public class MovieSummary
    {
         public List<Movie> Movies { get; set; }
    }
    public class Movie
    {
         public int id { get; set; }
         public string name { get; set; }
    }

    public static MovieSummary Deserialize()
    {
        using (TextReader reader = new StreamReader("c:''movies.xml"))
        {
            XmlSerializer serializer = new XmlSerializer(typeof(MovieSummary));
            return (MovieSummary)serializer.Deserialize(reader);
        }
    }
    public ActionResult GetListOfMovies()
    {
        MovieSummary summary = Deserialize();
        return View(summary);
    }
    <?xml version="1.0" ?> 
    <movies xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
     <movie>
      <id>1</id>
      <name>The Dark Knight</name>
     </movie>
    </movies>

MVC4应用程序中存在XML文档错误

根对象的类型为MovieSummary。因此,序列化程序需要一个根<MovieSummary>元素。使用XmlRoot和XmlElement属性重命名xml:中的元素

[XmlRoot("movies")]
public class MovieSummary
{
    [XmlElement("movie")]
    public List<Movie> Movies { get; set; }
}

public class Movie
{
    public int id { get; set; }
    public string name { get; set; }
}