Linq学习笔记(三)

简介: 下面的代码演示了如何利用Linq结合AspNetPager控件实现分页功能,以及如果利用Linq to Xml将当前页数据保存为Xml using (NorthWindDataContext db = new NorthWindDataContext())            {                               int Page = Utils.
下面的代码演示了如何利用Linq结合AspNetPager控件实现分页功能,以及如果利用Linq to Xml将当前页数据保存为Xml

  using  (NorthWindDataContext db  =   new  NorthWindDataContext())
            
{               
                
int Page = Utils.GetPageIndex();//取得当前页码
                var s = from c in db.T_Tests orderby c.F_AutoId select new { c.F_ID,F_AutoID = c.F_AutoId.ToString().PadLeft(8,'0')};                             
var p 
= s.Skip((Page - 1* this.AspNetPager1.PageSize).Take(this.AspNetPager1.PageSize);//取得当前页数据(注:先跳过(Page-1)*PageSize条记录后,再取PageSize条记录)
                this.GridView3.DataSource = p; 
                
this.GridView3.DataBind();

                
this.AspNetPager1.RecordCount = s.Count();//设置分页控件的总记录数
                this.AspNetPager1.CurrentPageIndex = Page;//设置分页控件的当前页


                
//将当前数据保存为xml
                XDocument doc = new XDocument(new XElement(
                                                            
"T_Test", from d in p                                                         
                                                                        select 
                                                                        (
                                                                            
new XElement
                                                                            (
                                                                                
"data",
                                                                                
new XAttribute("F_ID", d.F_ID),
                                                                                
new XAttribute("F_AutoID", d.F_AutoID)
                                                                            )
                                                                        )
                                                           )
                                               );
                doc.Save(
"c:\\demo.xml"); 

                db.Dispose();
//及时释放资源
            }

保存的Demo.Xml内容如下:

<? xml version="1.0" encoding="utf-8" ?>
< T_Test >
  
< data  F_ID ="9552e4dc-9a0a-414e-ab80-b0252f88411e"  F_AutoID ="00000014"   />
  
< data  F_ID ="2d135009-d24f-46ca-92ba-6d7b706f4025"  F_AutoID ="00000015"   />
  
< data  F_ID ="2e725756-da8c-4ede-ba13-00aa91fbd8e2"  F_AutoID ="00000016"   />
  
< data  F_ID ="d6a1b0aa-40e8-4cf8-a3f2-c1c28576d6f3"  F_AutoID ="00000017"   />
  
< data  F_ID ="fed11493-6349-419e-a83b-c42f6d318735"  F_AutoID ="00000018"   />
  
< data  F_ID ="c1eedd2b-2d92-46e3-8aab-f4180e106c6f"  F_AutoID ="00000019"   />
  
< data  F_ID ="762a57b5-8ca6-4d8c-9569-bbd62d4873a6"  F_AutoID ="00000020"   />
  
< data  F_ID ="a468b3b0-1392-4bf5-be84-b2e1a90c53de"  F_AutoID ="00000021"   />
  
< data  F_ID ="d3526eff-23d4-41a4-b6b2-d4b1f5bf6085"  F_AutoID ="00000022"   />
  
< data  F_ID ="6e0687ea-07be-4a83-a50f-4d3700868d15"  F_AutoID ="00000023"   />
  
< data  F_ID ="f343f96f-8d2b-4ef5-a431-82df7f607d6e"  F_AutoID ="00000024"   />
  
< data  F_ID ="34d7d945-599c-4986-bdec-2ee7bf338e0f"  F_AutoID ="00000025"   />
  
< data  F_ID ="2c569843-ecfd-4f53-a59b-5e28083ed4e3"  F_AutoID ="00000026"   />
</ T_Test >
目录
相关文章
|
7月前
|
XML SQL 开发框架
LINQ初步
C#中的LINQ入门学习
42 0
|
开发框架 .NET
2.3 LINQ
.net core LINQ
|
开发框架 .NET Serverless
C# Linq语言集成查询
C# Linq语言集成查询