首先 什么是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. Android 如何把一个 RelativeLayout或ImageView背景设为透明

    在项目中,需要把RelativeLayout 和  ImageView背景设置为透明,怎么实现呢?这里主要通过代码,请参阅以下关键代码: public ImageView imgDetail; pri ...

  2. find big file

    #!/bin/bash #command usage description function usage() { echo -e "Usage:nt$0 DIR_NAME" ex ...

  3. Learning WCF Chapter2 Data Contracts

    A data contract describes how CLR types map to XSD schema definitions. Data contracts are the prefer ...

  4. bzoj2754

    看到这道题一开始想到的是后缀数组+二分+rmq 类似bzoj3172 问每个串i在合并后的串出现了多少次 等价于有多少个后缀j,使得LCP(i,j)>=length(s[i]) 但是想想又不对, ...

  5. bzoj1072

    还是那句话s<=10 必然想到状压 题目唯一的难点在于怎么转移整除 整除即是mod d=0,我们用f[cur,j]表示选取状况为cur,余数为j的方案数 注意一个数a1a2a3…an (ai表示 ...

  6. 在Raspberry配置优化安装LNMP环境总结

    在Raspberry配置优化安装LNMP环境总结 apt-get update apt-get install nginx apt-get install php5-fpm php5-cli php5 ...

  7. How to install Apache Server on Windows

    Note Those of you interested in the Apache 2.0.X tutorial, it has been abandon and I will no longer ...

  8. Poj 2299 - Ultra-QuickSort 离散化,树状数组,逆序对

    Ultra-QuickSort Time Limit: 7000MS   Memory Limit: 65536K Total Submissions: 52306   Accepted: 19194 ...

  9. 虚拟机之仅主机模式(HostOnly)链接外网设置

    我的环境: 虚拟机-VMware 虚拟系统-CentOS 现实主机-win7 具体设置步骤: 一.设置现实主机 (地址等不用额外设置,下面是我电脑正常上网的配置) 将本地链接设置共享(这步很重要) 二 ...

  10. [经典] atoi && itoa

    atoi原型:int atoi(const char *nptr) atoi,需要考虑的内容: 1. 第一个字符为"-"时为负,系数为-1:为"+"时为正,系数 ...