Linq随机读取数据浅析

开发 后端
这里介绍Linq随机读取数据,在系统自由生成的o/p mapping代码中添加这个方法,如果是用户自己编写的(或是工具生成的)o/p mapping代码也是同理。

学习Linq时,经常会遇到Linq随机读取数据问题,这里将介绍Linq随机读取数据问题的解决方法

Linq随机读取数据

在系统自由生成的o/p mapping代码中添加这个方法,如果是用户自己编写的(或是工具生成的)o/p mapping代码也是同理。这里我就说下我自己的。系统生成的LINQ To Sql类会产生三个文件.Northwind.cs、Northwind.dbml.layout、Northwind.designer.cs

我们要做的就是在Northwind.designer.cs中去添加我们需要的方法NEWID(),这个方法的功能当然就是和数据库当中的NEWID()是功能一致的。

具体的方法法代码如下:

  1. [System.Data.Linq.Mapping.DatabaseAttribute(Name="Northwind")]  
  2. public partial class NorthwindDataContext : System.Data.Linq.DataContext  
  3. {  
  4.  
  5. private static System.Data.Linq.Mapping.
    MappingSource 
    mappingSource = new AttributeMappingSource();  
  6. //在自动生成的mapping code中添加  
  7. [Function(Name = "NEWID"IsComposable = true)]  
  8. public Guid NEWID()  
  9. {  
  10. return ((Guid)(this.ExecuteMethodCall(this, 
    ((MethodInfo)(MethodInfo.GetCurrentMethod()))).ReturnValue));  
  11. }  
  12. //后面的生成代码略.. 

重新生成,编写好这个,我们的访问实现就变的很容易了,其使用方式和传统访问原理一致。

  1. db = new NorthwindDataContext();  
  2. var result = (from c in db.Customers orderby db.NEWID() select c).Take(10);  
  3.  
  4. foreach (var item in result)  
  5. Console.WriteLine(item.CompanyName);  
  6.  
  7. Console.ReadLine(); 

以上介绍Linq随机读取数据。

【编辑推荐】

  1. Linq查询二维数组浅析
  2. 学习Linq经验总结
  3. Linq修改XML文档描述
  4. Linq延时执行全面分析
  5. Linq实现Left join
责任编辑:佚名 来源: IT168
相关推荐

2009-09-15 14:30:11

Linq连接

2009-09-18 14:25:36

LINQ to SQL

2009-09-17 08:47:00

Linq插入数据

2009-09-17 13:30:32

LINQ to XML

2009-09-16 15:33:22

LINQ to XML

2009-09-15 13:30:54

linq级联

2009-09-07 16:44:28

Linq String

2009-09-10 18:02:23

LINQ to SQL

2009-09-14 16:46:15

LINQ to XML

2009-09-16 17:11:35

LINQ To SQL

2009-09-15 09:19:22

linq动态条件

2009-09-14 09:46:00

LINQ to SQL

2009-09-15 10:12:37

LINQ To SQL

2009-09-14 18:23:59

LINQ嵌套查询

2009-09-17 18:05:15

linq to sql

2009-09-10 14:47:53

Linq .NET查询

2009-09-14 13:37:25

LINQ ADO.NE

2009-09-17 17:34:23

linq to sql

2009-09-09 17:45:07

Linq表达式

2009-09-14 19:14:51

LINQ动态查询
点赞
收藏

51CTO技术栈公众号