• 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()之类的,看你自己怎么灵活设置名称,而别人和自己以后阅读和调用方便。

    此文就写到这里。希望大家进行多多的抛砖,呵呵。多多的交流。

  • 相关阅读:
    ASP.NET 页面间数据传递的方法
    ASP.NET中实现页面间数据传递的方法
    C# 连接SQL数据库
    C# 通过url地址获取页面内容
    JS弹窗带遮蔽的功能
    C# Code First 实例学习
    CS窗体程序数据列表分页
    关于RDLC报表打印预览界面显示页码问号的问题
    C#Dictionary键值对取值用法
    分别获取一个字符串中的字母和数字
  • 原文地址:https://www.cnblogs.com/wanzegui325/p/1629560.html
Copyright © 2020-2023  润新知