• linq to xml(增删改查)


    xml文件

    <?xml version="1.0" encoding="utf-8"?>
    <bookstore>
      <!--记录书本的信息-->
      <book Type="必修课" ISBN="7-111-19149-2">
        <title>数据结构</title>
        <author>严蔚敏</author>
        <price>30.00</price>
      </book>
      <book Type="必修课" ISBN="7-111-19149-3">
        <title>路由型与交换型互联网基础</title>
        <author>程庆梅</author>
        <price>27.00</price>
      </book>
      <book Type="选修课" ISBN="7-111-19149-1">
        <title>计算机操作系统</title>
        <author>张文明</author>
        <price>28</price>
      </book>
    </bookstore>

    加载本地xml

     string path = @"C:UsersasusDesktop	est.xml";
            XElement xe;
            public MainWindow()
            {
                InitializeComponent();
               xe= XElement.Load(path);
            }

    自定义一个类

     public class BookModel
            {
                public BookModel()
                { }
                /// <summary>
                /// 所对应的课程类型
                /// </summary>
                private string bookType;
    
                public string BookType
                {
                    get { return bookType; }
                    set { bookType = value; }
                }
    
                /// <summary>
                /// 书所对应的ISBN号
                /// </summary>
                private string bookISBN;
    
                public string BookISBN
                {
                    get { return bookISBN; }
                    set { bookISBN = value; }
                }
    
                /// <summary>
                /// 书名
                /// </summary>
                private string bookName;
    
                public string BookName
                {
                    get { return bookName; }
                    set { bookName = value; }
                }
    
                /// <summary>
                /// 作者
                /// </summary>
                private string bookAuthor;
    
                public string BookAuthor
                {
                    get { return bookAuthor; }
                    set { bookAuthor = value; }
                }
    
                /// <summary>
                /// 价格
                /// </summary>
                private double bookPrice;
    
                public double BookPrice
                {
                    get { return bookPrice; }
                    set { bookPrice = value; }
                }
            
        }

      private void Button_Click(object sender, RoutedEventArgs e)
            {
                
                XElement record = new XElement(
                   new XElement("book",
                   new XAttribute("Type", "选修课"),
                  new XAttribute("ISBN", "7-111-19149-1"),
                   new XElement("title", "计算机操作系统"),
                   new XElement("author", "张文明"),
                  new XElement("price", 28.00)));
                             xe.Add(record);
                             xe.Save(path);
            }

      private void Button_Click_1(object sender, RoutedEventArgs e)
            {
                foreach (var item in xe.Elements("book").Where(x => x.Attribute("ISBN").Value== "7-111-19149-1").ToList())
                {
                    item.Remove();
                }
                xe.Save(path);
            }

     private void Button_Click_2(object sender, RoutedEventArgs e)
            {
                foreach (var item in xe.Elements("book").Where(x => x.Attribute("ISBN").Value == "7-111-19149-1").ToList())
                {
                    item.Element("title").Value = "test";
                }
                xe.Save(path);
            }
     

       private void Button_Click_3(object sender, RoutedEventArgs e)
            {
                List<BookModel> bookModelList = new List<BookModel>();
                foreach (var item in xe.Elements("book").Where(x => x.Attribute("ISBN").Value == "7-111-19149-1").ToList())
                {
                    
                    BookModel bookModel = new BookModel();
                    bookModel.BookType = item.Attribute("Type").Value;
                    bookModel.BookISBN = item.Attribute("ISBN").Value;
                    bookModel.BookName = item.Element("title").Value;
                    bookModel.BookPrice =Convert.ToDouble( item.Element("price").Value);
                    bookModel.BookAuthor = item.Element("author").Value;
                    bookModelList.Add(bookModel);
                }
                dg1.ItemsSource = bookModelList;
            }

     参考博客:https://www.cnblogs.com/yuer20180726/p/10984234.html

  • 相关阅读:
    闭包总结
    执行上下文总结
    下拉列表
    练习 九九乘法表
    JavaScript中break和continue的区别
    JaveScript遍历数组的方法
    将一个块级元素水平和垂直居中的方法
    ECMAScript 中最常见的一个问题是字符串连接的性能
    JS 一些题目 难点
    JS闭包
  • 原文地址:https://www.cnblogs.com/dangnianxiaoqingxin/p/13180853.html
Copyright © 2020-2023  润新知