LINQ中怎么使用NEWID()


只说自己怎么使用NEWID()随机函数的,介于上一篇已经讨论了在MS SQL中怎么使用NEWID(),这里暂时不再讨论,言归正传,其实,在.NET中LINQ,其实就是把MSSQL数据库与面向对象思想深刻结合了起来,我本人理解为是ORM,对于ORM我没有深入的研究,只领会其中的思想吧,皮毛而也。惭愧哦,看来自己需要自学加深的东西还是很多的。

  首先必须在DBML文件中添加如下代码,进行关系函数映射。实际上是在DBML后台代码文件进行代码添加,在DESIGNER.CS文件中,

  代码

  1   [Function(Name = "NEWID", IsComposable = true)]

  2     public Guid NEWID()

  3     {

  4         return ((Guid)(this.ExecuteMethodCall(this,

  5         ((MethodInfo)(MethodInfo.GetCurrentMethod()))).ReturnValue));

  6     }

  以上代码就是进行与MSSQL中的NEWID()系统函数进行映射

  然后,在你的页面文件或者FORM文件的CODE FILE中进行调用,见下面CODE:

  代码

  private void bindGridview()

  {

  db = new NorthWindDataContext();

  var result = (from c in db.Customers orderby db.NEWID() select c).Take(10);

  GridView1.DataSource = result;

  GridView1.DataBind();

  }

  以上就是怎么在LINQ中使用NEWID,记得,你在DBML代码文件中,自己生成的函数名称NEWID是大写的话,你自动调用的时候那肯定是大写的,这个自己定义,也不必同MSSQL中的NEWID同名,你可以写成 public Guid returnMssqlNewid()之类的,看你自己怎么灵活设置名称,而别人和自己以后阅读和调用方便


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3