C#操作xml文档及遇到的各种报错提示

界面

            //所有的数据全部在集合中
            //dgv控件绑定List集合,List集合中有User类的对象,对象里有属性,把属性绑定到没列的数据上
            dgv.DataSource = list;//绑定数据

           姓名,密码,性别,年龄列的DataPropertyName分别对应List集合中对象的Name,Password,Gender,Age属性

后台代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Xml.Linq;

namespace _06大程序
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            //读取所有的用户信息
            LoadUser();
        }

        private void LoadUser()
        {
            List<User> list = new List<User>();//存储对象数据的所有
            XDocument xdoc = XDocument.Load("goodword.xml");
            //获取根元素,遍历该根元素下的所有子元素,并把所有的子元素添加到一个User类型的子元素中

           // XElement root = xdoc.Root;
            foreach (XElement user in xdoc.Root.Elements())
            {
          
                list.Add(new User() {
                    Id = user.Attribute("id").Value,
                    Name = user.Element("name").Value,
                    Password = user.Element("password").Value,
                    Gender = user.Element("gender").Value,
                    Age = user.Element("age").Value });

                //Dgv控件绑定List集合
                //List集合中有User类的对象
                //对象里有属性
                //把属性绑定到没列的对象上  
            }
            //所有数据全部在集合中
            Dgv.DataSource = list;//绑定数据
            //注意:这一行代码存放位置不正确就会导致form窗口仅显示一行数据
        }
    }
}

1)如果这一部分写错,例如gender写成gendre,就会出现报错

list.Add(new User() {
                    Id = user.Attribute("id").Value,
                    Name = user.Element("name").Value,
                    Gender = user.Element("gendre").Value,//

识别错误比较麻烦

2)如果这一行代码写错,就会在form窗口仅显示一行数据

 //所有数据全部在集合中
            Dgv.DataSource = list;//绑定数据
            //注意:这一行代码存放位置不正确就会导致form窗口仅显示一行数据

猜你喜欢

转载自blog.csdn.net/nsjlive/article/details/81501440