标签:rabl 取数 name 位置 系统 sele price 显示 选中
先定义 一个方法显示查询出来的数据
private void showInfoByElements(IEnumerable<XElement> elements)
{
List<BookModel> modelList = new List<BookModel>();//BookModel 对应的读取数据的实体类
foreach (var ele in elements)
{
BookModel model = new BookModel();
model.BookAuthor = ele.Element("author").Value;
model.BookName = ele.Element("title").Value;
model.BookPrice = Convert.ToDouble(ele.Element("price").Value);
model.BookISBN=ele.Attribute("ISBN").Value;
model.BookType=ele.Attribute("Type").Value;
modelList.Add(model);
}
dgvBookInfo.DataSource = modelList;
}
读取所有的数据
直接找到元素为book的这个结点,然后遍历读取所有的结果.
private void btnReadAll_Click(object sender, EventArgs e)
{
XElement xe = XElement.Load(@"..\..\Book.xml");//xml文件所在位置
IEnumerable<XElement> elements = from ele in xe.Elements("book")
select ele;//linq 方式查询xml内容
showInfoByElements(elements);
}
删除选中的数据
XElement xe = XElement.Load(@"..\..\Book.xml");
IEnumerable<XElement> elements = from ele in xe.Elements("book")
where (string)ele.Attribute("ISBN") == id
select ele;
{
if (elements.Count() > 0)
elements.First().Remove();
}
xe.Save(@"..\..\Book.xml");//更新
插入一条数据
XElement xe = XElement.Load(@"..\..\Book.xml");
XElement record = new XElement(
new XElement("book",
new XAttribute("Type", "选修课"),
new XAttribute("ISBN","7-111-19149-1"),
new XElement("title", "计算机操作系统"),
new XElement("author", "7-111-19149-1"),
new XElement("price", 28.00)));
xe.Add(record);
xe.Save(@"..\..\Book.xml");
标签:rabl 取数 name 位置 系统 sele price 显示 选中
原文地址:https://www.cnblogs.com/manwwx129/p/9529499.html