加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Xml序列化c#

发布时间:2020-12-16 23:24:22 所属栏目:百科 来源:网络整理
导读:无法理解我做错了什么,结果集是空的. 我的代码: class Class1 { public static object DeSerialize() { object resultObject; XmlSerializer serializer = new XmlSerializer(typeof(PointsContainer)); using (TextReader textReader = new StreamReader(@
无法理解我做错了什么,结果集是空的.
我的代码:

class Class1
    {

        public static object DeSerialize()
        {
            object resultObject;

            XmlSerializer serializer = new XmlSerializer(typeof(PointsContainer));
           using (TextReader textReader = new StreamReader(@"d:point.xml"))
            {
                resultObject = serializer.Deserialize(textReader);
            }

            return resultObject;


        }
    }

    [Serializable]
    [XmlRoot("Points")]
    public class PointsContainer
    {
        [XmlElement("Point")]       
        private List<Point> items = new List<Point>();

        public List<Point> Items
        {
            get { return items; }
            set { items = value; }
        }


    }


    [Serializable]   
    public class Point
    {      
        [XmlAttribute]
        public bool x { get; set; }

        [XmlAttribute]
        public bool y { get; set; }
    }

XML:

<Points>  
   <Point x="1" y="5"/>
   <Point x="21" y="3"/>
   <Point x="3" y="7"/>
</Points>

解决方法

将[XmlElement]属性移动到属性. XmlSerializer忽略私有成员.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读