首先 什么是linq呢 ?

LINQ即Language Integrated Query(语言集成查询),LINQ是集成到C#和Visual Basic.NET这些语言中用于提供查询数据能力的一个新特性。

它是.NET框架的扩展,它允许我们以数据库查询的方式查询数据集合。

借助于LINQ技术,我们可以使用一种类似SQL的语法来查询任何形式的数据。

接下来讲讲我工作中用到的

linq中的数组筛选数据库中的数据

public List GetList1(string cardPhone,string[] carNo)
        {
            var q = from r in DB().TAB_TEL_ADVISORY
                    where r.CUST_TEL == cardPhone || carNo.Contains(r.CAR_NO)
                    select new TelAdvisory
                    {
                        ID = r.ID,
                        CustTel = r.CUST_TEL,
                        CustName = r.CUST_NAME,
                        CarNo = r.CAR_NO,
                        AdvisoryContent = r.ADVISORY_CONTENT,
                        AdvisoryDate = r.ADVISORY_DATE,
                        AnswerResult = r.ANSWER_RESULT,
                        Server = r.SERVER,
                    };
            return q.ToList();
        }

LINQ中的增删改都要调用SubmitChanges方法

public bool ResetPassword(UserType type, int userId, string newCryptPassword)
        {
            var db = DB();
            try
            {
                switch (type)
                {
                    case UserType.雇员:
                        {
                            var tab = db.TAB_EMPLOYEE.Single(r => r.ID == userId);
                            tab.LOGIN_PWD = newCryptPassword;
                            break;
                        }
                    case UserType.合作商:
                        {
                            var tab = db.TAB_PARTNER.Single(r => r.ID == userId);
                            tab.LOGIN_PWD = newCryptPassword;
                            break;
                        }
                }
                db.SubmitChanges();
                return true;
            }
            catch
            {
                return false;
            }
        }

db.account.DeleteOnSubmit(account);
db.account.InsertOnSubmit(account);
 db.SubmitChanges();

linq中的搜索条件,传入的参数是空的或者有值的,或者是关键字

query = (from r in db.TAB_PARTNER
               where ((partnerType != -1 && r.partner_type == partnerType) || partnerType == -1)

&& ((searchKey != "" && r.PARTNER_NAME.IndexOf(searchKey) > -1) || searchKey == "")

orderby r.partner_type ascending

linq to sql分页的问题

Skip(100)代表跳过100行后.从第101行开始分页;

take(10)表示多少行分页; pagesize为每页显示的数据条数

q.Skip(PageSize * (CurrentPage - 1)).Take(PageSize).ToList();

Sliverlight linq中的数组筛选数据库中的数据的更多相关文章

  1. EF Core 中多次从数据库查询实体数据,DbContext跟踪实体的情况

    使用EF Core时,如果多次从数据库中查询一个表的同一行数据,DbContext中跟踪(track)的实体到底有几个呢?我们下面就分情况讨论下. 数据库 首先我们的数据库中有一个Person表,其建 ...

  2. 纯静态界面中(html)中通过js调用dll中的方法从数据库中读取数据

    最近接到一个离职员工的任务,一个搭好框架的ERP系统,看了两天,说一下看到的东西,整个项目目录中我没发现一个.aspx后缀的文件,全是静态HTML文件,之后发现他用的jquery简直看的头疼,不过大概 ...

  3. MyBatis中使用实体中使用枚举,数据库中使用数值

    一.简介 本文主要讲MyBatis中使用实体中使用枚举,数据库中使用数值的解决方案.正常直接使用会报错,需要添加typeHandlers在mybatis-config.xml中. 二.解决方案 如下: ...

  4. Python:判断文本中的用户名在数据库中是否存在,存在返回1,不存在返回0

    下面是我写的python的一个小脚本,作用是:判断文本中的用户名在数据库中是否存在,存在返回1,不存在返回0.用的是MySQL数据库. 要注意的是:strip函数的使用,该函数的作用是去除字符串两端多 ...

  5. C#不允许在foreach循环中改变数组或集合中元素的值(注:成员的值不受影响)

    C#不允许在foreach循环中改变数组或集合中元素的值(注:成员的值不受影响),如以下代码将无法通过编译. foreach (int x in myArray) { x++; //错误代码,因为改变 ...

  6. 解决SpringDataJpa实体类中属性顺序与数据库中生成字段顺序不一致的问题

    一.在application.yml配置中添加数据库根据实体类自动创建数据库表的配置(这里数据库采用MySQL数据库) jpa: database: MYSQL show-sql: true #Hib ...

  7. Ext.net中Combobox如何绑定数据库中的值-通用方法

    今天在项目中再次碰到了问题,就是Combobox中的值如果是直接绑定很简单.简单添加项就行了.代码如下: <ext:ComboBox ID=" /> </Items> ...

  8. Redis中的批量删除数据库中的Key

    本文参考:http://blog.csdn.net/spring21st/article/details/15771861 http://stackoverflow.com/questions/575 ...

  9. c# 在datagridview中添加comboboxcolumn 绑定数据库读取显示数据

    datagridview中的comboboxcolumn 从绑定的数据库中读取显示时,只需要注意一点,就是sql语句加个 CStr() 字符串转换函数即可,如下: SELECT CStr(XXX) a ...

随机推荐

  1. C# WinForm捕获未处理的异常

    using System; using System.Collections.Generic; using System.Windows.Forms; using System.IO; namespa ...

  2. C# json

    C# 解析 json JSON(全称为JavaScript Object Notation) 是一种轻量级的数据交换格式.它是基于JavaScript语法标准的一个子集. JSON采用完全独立于语言的 ...

  3. Oracle和MSSQL查询有多少张表

    Oracle: SELECT count(*) FROM user_tables MSSQL: ) FROM sysobjects WHERE xtype='U' 这种方法可能会把dbo.dtprop ...

  4. 常用开源GIS项目

    常用开源GIS项目     常用开源桌面GIS软件 QGIS 始于2002年5月,算得上是开源GIS平台中的后起之秀.界面友好,分析功能可与GRASS GIS相媲美.主页:http://www.qgi ...

  5. POJ 3666 Making the Grade (DP滚动数组)

    题意:农夫约翰想修一条尽量平缓的路,路的每一段海拔是A[i],修理后是B[i],花费|A[i] – B[i]|,求最小花费.(数据有问题,代码只是单调递增的情况) #include <stdio ...

  6. RHEL7 -- Linux搭建FTP虚拟用户

    安装vsftpd软件包[root@localhost ~]# yum install vsftpd -y [root@localhost ~]# yum install db4 db4-utils 建 ...

  7. 云之讯融合通讯开放平台_提供融合语音,短信,VoIP,视频和IM等通讯API及SDK。

    云之讯融合通讯开放平台_提供融合语音,短信,VoIP,视频和IM等通讯API及SDK. undefined 全明星之极验证 - SendCloud undefined [转载]国内外几个主流的在线开发 ...

  8. Java ThreadLocal深度解析

    首先,ThreadLocal 不是用来解决共享对象的多线程访问问题的,一般情况下,通过ThreadLocal.set() 到线程中的对象是该线程自己使用的对象,其他线程是不需要访问的,也访问不到的.各 ...

  9. yii快速入门与参考

    Yii 权威指南 http://www.yiichina.com/guide/ http://www.yiiframework.com/doc/guide/1.1/zh_cn/ Ⅰ.基本概念一.入口文 ...

  10. 【转】开始使用Mac OS X——写给Mac新人

    写这篇文档的原因有两个,一.身边使用Mac的朋友越来越多,经常会有人来咨询一些常见的使用问题,比如:“为什么把界面右上角的红色按钮叉掉,程序还没有关闭?”之类.而且我也不愿意看到很多人使用OSX时仅仅 ...