Linq To Xml基础
<?xml version="1.0" encoding="utf-8" ?>
<Books>
<Category Order="1" Name="文学类">
<Book Order="1" Name="战争与和平" Author="张三" Price="120.00" Publish="北京大学出版社"></Book>
<Book Order="2" Name="简爱" Author="李四" Price="153.00" Publish="清华大学出版社"></Book>
<Book Order="3" Name="罪与罪" Author="王五" Price="89.00" Publish="工业出版社"></Book>
</Category> <Category Order="3" Name="计算机类">
<Book Order="1" Name="Linq高级编程" Author="童贝" Price="67.40" Publish="北京大学出版社"></Book>
<Book Order="2" Name="深入浅出WPF" Author="向刚" Price="65.00" Publish="清华大学出版社"></Book>
<Book Order="3" Name="ASP.Net MVC4" Author="马六" Price="89.00" Publish="工业出版社"></Book>
</Category> <Category Order="2" Name="科技类">
<Book Order="1" Name="自然" Author="邵叶" Price="130.40" Publish="北京大学出版社"></Book>
<Book Order="2" Name="新工业革命" Author="李安" Price="65.00" Publish="清华大学出版社"></Book>
<Book Order="3" Name="时空" Author="马六" Price="150.00" Publish="工业出版社"></Book>
</Category>
</Books>
private void LoadXml()
{
XElement bookXml = XElement.Load(Server.MapPath("~/Book.xml")); if (bookXml == null)
{
return;
} // 查找所有书籍分类
var categorysElement = from item in bookXml.Elements("Category")
orderby (int.Parse(item.Attribute("Order").Value))
select item;
List<Book> listBook = new List<Book>(); foreach (var categoryElement in categorysElement)
{
// 获取书籍分类的名称
string categoryName = categoryElement.Attribute("Name").Value; // 查找此分类下的所有书籍
var booksElement = from book in categoryElement.Elements("Book")
orderby (int.Parse(book.Attribute("Order").Value))
select book; foreach (var bookElement in booksElement)
{
Book book = new Book();
book.Category = categoryName;
book.Name = bookElement.Attribute("Name").Value;
book.Author = bookElement.Attribute("Author").Value;
book.Price = bookElement.Attribute("Price").Value;
book.Publish = bookElement.Attribute("Publish").Value;
listBook.Add(book);
}
} this.grdBooks.DataSource = listBook;
this.grdBooks.DataBind();
} public class Book
{
/// <summary>
/// 分类名称
/// </summary>
public string Category { get; set; } /// <summary>
/// 书籍名称
/// </summary>
public string Name { get; set; } /// <summary>
/// 价格
/// </summary>
public string Price { get; set; } /// <summary>
/// 作者
/// </summary>
public string Author { get; set; } /// <summary>
/// 出版社
/// </summary>
public string Publish { get; set; }
}
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView AutoGenerateColumns="false" ID="grdBooks" runat="server" BackColor="LightGoldenrodYellow" BorderColor="Tan" BorderWidth="1px" CellPadding="2" ForeColor="Black" GridLines="None">
<AlternatingRowStyle BackColor="PaleGoldenrod" />
<Columns>
<asp:BoundField DataField="Category" HeaderText="分类" ItemStyle-Width="10%" />
<asp:BoundField DataField="Name" HeaderText="书名" ItemStyle-Width="20%" />
<asp:BoundField DataField="Author" HeaderText="作者" ItemStyle-Width="8%" />
<asp:BoundField DataField="Price" HeaderText="价格" ItemStyle-Width="8%" />
<asp:BoundField DataField="Publish" HeaderText="出版社" ItemStyle-Width="15%" />
</Columns>
<FooterStyle BackColor="Tan" />
<HeaderStyle BackColor="Tan" Font-Bold="True" />
<PagerStyle BackColor="PaleGoldenrod" ForeColor="DarkSlateBlue" HorizontalAlign="Center" />
<SelectedRowStyle BackColor="DarkSlateBlue" ForeColor="GhostWhite" />
<SortedAscendingCellStyle BackColor="#FAFAE7" />
<SortedAscendingHeaderStyle BackColor="#DAC09E" />
<SortedDescendingCellStyle BackColor="#E1DB9C" />
<SortedDescendingHeaderStyle BackColor="#C2A47B" /> </asp:GridView>
</div>
</form>
</body>
</html>
Linq To Xml基础的更多相关文章
- LINQ to XML 编程基础
1.LINQ to XML类 以下的代码演示了如何使用LINQ to XML来快速创建一个xml: 隐藏行号 复制代码 ?创建 XML public static void CreateDocumen ...
- XML基础学习02<linq to xml>
Linq to XML的理解 1:这是一种比较好的操作Xml的工具. àXDocument 文档 àXElement 元素 àXAttribute 属性 àXText 文本 2:这里还是和我们之前创建 ...
- LINQ to XML编程之编程基础
1.声明,LINQ to XML让xml的创建变得非常简单. XDocument myDocument = new XDocument( new XDeclaration("1.0" ...
- C#基础巩固(2)-Linq To XML创建XML
一.首先要清楚一个正确的XML基本格式是怎样的. 1.后缀名.xml结尾 2.有一行描述 3.有且仅有一个根节点. 如图: 一个正确的xml文件能够被浏览器打开且显示.所以判断一个xml文件有没有错误 ...
- C#基础知识---Linq操作XML文件
概述 Linq也就是Language Integrated Query的缩写,即语言集成查询,是微软在.Net 3.5中提出的一项新技术. Linq主要包含4个组件---Linq to Objects ...
- c#操作xml文件(XmlDocument,XmlTextReader,Linq To Xml)
主界面
- Linq对XML的简单操作
前两章介绍了关于Linq创建.解析SOAP格式的XML,在实际运用中,可能会对xml进行一些其它的操作,比如基础的增删该查,而操作对象首先需要获取对象,针对于DOM操作来说,Linq确实方便了不少,如 ...
- Linq世界走一走(LINQ TO XML)
前言:Linq to xml是一种使用XML的新方法.从本质上来说,它采用了多种当前使用的XML处理技术,如DOM和XPath,并直接在.NET Framework内将它们组合为一个单一的编程接口.L ...
- LINQ to XML学习笔记
一.XML基础知识 1.XML:可扩展标记语言 Extensible Markup Language ,提供了一种保存数据的格式,数据可以通过这种格式很容易地在不同的应用程序之间实现共享. 2.使用X ...
随机推荐
- bootstrap 时间控件带(时分秒)选择器
1.控件下载地址:http://www.bootcss.com/p/bootstrap-datetimepicker/index.htm,参数设置说明也在这个链接下面: 2.具体参数说明(复制原链接) ...
- 利用matlab摄像机标定
(1)输入图像 "Image names"键 Matlab的图形窗口显示出20幅靶标图像 (2) 提取角点 "Extract grid corners"键. 输 ...
- 16.10.17学到的Java知识
1. 例:3-2.6==0.4的值是什么?可能乍一看,感觉是返回TRUE,因为3-2.6=0.4,0.4==0.4:所以返回TRUE. 然而,上面分析在JAVA中是错的. 由于浮点数的运算在JAVA中 ...
- android数据存储之外部存储(External Storage)
Android设备支持外部存储器,可以是可移动存储器(如SD卡),也可以是内置在设备中的外部存储器(不可移动). 如果希望外部存储器上的文件只对本程序有用,并且当程序被卸载时目录中的文件自动被系统删除 ...
- 大批量GPS坐标转百度坐标
一. 百度地图API大批量转换时有数量限制,一个一个转. 用到的方法接口 /** 源坐标 格式:经度,纬度;经度,纬度… 最多支持100个; 源坐标类型:默认为1,即GPS ...
- Thinkpad 装 centos 7后发热量大处理
原因:由于没有独立显卡驱动导致发热量大,禁用独立显卡去驱动即可. 步骤: 开机按 Fn+F1 进入BIOS. 选择 config 选项卡, 找到 Primary Display [SG] BIOS-- ...
- 炫酷CSS
<!DOCTYPE html><!--To change this license header, choose License Headers in Project Propert ...
- CSS布局技巧 -- 各种居中
多行垂直居中 废话少说,直接上例子!!! display:table Html代码: <div class="wrapper"> <div class=" ...
- Windows Desktop 调用 WinRT api
<Reference Include="Windows"> <HintPath>..\..\..\..\..\..\Program Files (x86)\ ...
- nginx搭建笔记
1. nginx安装 Env: Mac OS 10.10 Yosemite pcre: http://pcre.org/ $tar -zxf pcre-8.34.tar.gz $cd pcre-8.3 ...