LINQ to SQL支持以下String方法。但是不同的是默认情况下System.String方法区分大小写。而SQL则不区分大小写。

1.字符串串联(String Concatenation)

var q =
from c in db.Customers
select new
{
c.CustomerID,
Location = c.City + ", " + c.Country
};

语句描述:这个例子使用+运算符在形成经计算得出的客户Location值过程中将字符串字段和字符串串联在一起。

2.String.Length

var q =
from p in db.Products
where p.ProductName.Length <
select p;

语句描述:这个例子使用Length属性查找名称短于10个字符的所有产品。

3.String.Contains(substring)

var q =
from c in db.Customers
where c.ContactName.Contains("Anders")
select c;

语句描述:这个例子使用Contains方法查找所有其联系人姓名中包含“Anders”的客户。

4.String.IndexOf(substring)

var q =
from c in db.Customers
select new
{
c.ContactName,
SpacePos = c.ContactName.IndexOf(" ")
};

语句描述:这个例子使用IndexOf方法查找每个客户联系人姓名中出现第一个空格的位置。

5.String.StartsWith(prefix)

var q =
from c in db.Customers
where c.ContactName.StartsWith("Maria")
select c;

语句描述:这个例子使用StartsWith方法查找联系人姓名以“Maria”开头的客户。

6.String.EndsWith(suffix)

var q =
from c in db.Customers
where c.ContactName.EndsWith("Anders")
select c;

语句描述:这个例子使用EndsWith方法查找联系人姓名以“Anders”结尾的客户。

7.String.Substring(start)

var q =
from p in db.Products
select p.ProductName.Substring();

语句描述:这个例子使用Substring方法返回产品名称中从第四个字母开始的部分。

8.String.Substring(start, length)

var q =
from e in db.Employees
where e.HomePhone.Substring(, ) == ""
select e;

语句描述:这个例子使用Substring方法查找家庭电话号码第七位到第九位是“555”的雇员。

9.String.ToUpper()

var q =
from e in db.Employees
select new
{
LastName = e.LastName.ToUpper(),
e.FirstName
};

语句描述:这个例子使用ToUpper方法返回姓氏已转换为大写的雇员姓名。

10.String.ToLower()

var q =
from c in db.Categories
select c.CategoryName.ToLower();

语句描述:这个例子使用ToLower方法返回已转换为小写的类别名称。

11.String.Trim()

var q =
from e in db.Employees
select e.HomePhone.Substring(, ).Trim();

语句描述:这个例子使用Trim方法返回雇员家庭电话号码的前五位,并移除前导和尾随空格。

12.String.Insert(pos, str)

var q =
from e in db.Employees
where e.HomePhone.Substring(, ) == ")"
select e.HomePhone.Insert(, ":");

语句描述:这个例子使用Insert方法返回第五位为 ) 的雇员电话号码的序列,并在 ) 后面插入一个 :。

13.String.Remove(start)

var q =
from e in db.Employees
where e.HomePhone.Substring(, ) == ")"
select e.HomePhone.Remove();

语句描述:这个例子使用Remove方法返回第五位为 ) 的雇员电话号码的序列,并移除从第十个字符开始的所有字符。

14.String.Remove(start, length)

var q =
from e in db.Employees
where e.HomePhone.Substring(, ) == ")"
select e.HomePhone.Remove(, );

语句描述:这个例子使用Remove方法返回第五位为 ) 的雇员电话号码的序列,并移除前六个字符。

15.String.Replace(find, replace)

var q =
from s in db.Suppliers
select new
{
s.CompanyName,
Country = s.Country
.Replace("UK", "United Kingdom")
.Replace("USA", "United States of America")
};

语句描述:这个例子使用 Replace 方法返回 Country 字段中UK 被替换为 United Kingdom 以及USA 被替换为 United States of America 的供应商信息。

LINQ to SQL语句(15)之String的更多相关文章

  1. 年终巨献 史上最全 ——LINQ to SQL语句

    LINQ to SQL语句(1)之Where 适用场景:实现过滤,查询等功能. 说明:与SQL命令中的Where作用相似,都是起到范围限定也就是过滤作用的,而判断条件就是它后面所接的子句.Where操 ...

  2. LINQ to SQL语句非常详细(原文来自于网络)

    LINQ to SQL语句(1)之Where Where操作 适用场景:实现过滤,查询等功能. 说明:与SQL命令中的Where作用相似,都是起到范围限定也就是过滤作用的,而判断条件就是它后面所接的子 ...

  3. LINQ to SQL语句

    http://kb.cnblogs.com/page/42477/2/ 本系列文章导航 LINQ to SQL语句(1)之Where LINQ to SQL语句(2)之Select/Distinct ...

  4. LINQ to SQL语句对应SQL的实现

    LINQ to SQL语句(1)之Where LINQ to SQL语句(2)之Select/Distinct LINQ to SQL语句(3)之Count/Sum/Min/Max/Avg LINQ ...

  5. LINQ to SQL语句大全

    LINQ to SQL语句大全     LINQ to SQL语句(1)之Where 适用场景:实现过滤,查询等功能. 说明:与SQL命令中的Where作用相似,都是起到范围限定也就是过滤作用的,而判 ...

  6. 【转】LINQ to SQL语句(1)之Where

    Where操作 适用场景:实现过滤,查询等功能. 说明:与SQL命令中的Where作用相似,都是起到范围限定也就是过滤作用的,而判断条件就是它后面所接的子句. Where操作包括3种形式,分别为简单形 ...

  7. 史上最全 ——LINQ to SQL语句

    LINQ to SQL语句(1)之Where 适用场景:实现过滤,查询等功能. 说明:与SQL命令中的Where作用相似,都是起到范围限定也就是过滤作用的,而判断条件就是它后面所接的子句.Where操 ...

  8. LINQ to SQL语句(7)之Exists/In/Any/All/Contains

    适用场景:用于判断集合中元素,进一步缩小范围. Any 说明:用于判断集合中是否有元素满足某一条件:不延迟.(若条件为空,则集合只要不为空就返回True,否则为False).有2种形式,分别为简单形式 ...

  9. LINQ to SQL语句(9)之Top/Bottom和Paging和SqlMethods

    适用场景:适量的取出自己想要的数据,不是全部取出,这样性能有所加强. Take 说明:获取集合的前n个元素:延迟.即只返回限定数量的结果集. var q = ( from e in db.Employ ...

随机推荐

  1. linux内核分析作业6:分析Linux内核创建一个新进程的过程

    task_struct结构: struct task_struct {   volatile long state;进程状态  void *stack; 堆栈  pid_t pid; 进程标识符  u ...

  2. Azure Redis Cache

    将于 2014 年 9 月 1 日停止Azure Shared Cache服务,因此你需要在该日期前迁移到 Azure Redis Cache.Azure Redis Cache包含以下两个层级的产品 ...

  3. Javascript基础回顾 之(二) 作用域

    本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...

  4. 探索c#之尾递归编译器优化

    阅读目录: 递归运用 尾递归优化 编译器优化 递归运用 一个函数直接或间接的调用自身,这个函数即可叫做递归函数. 递归主要功能是把问题转换成较小规模的子问题,以子问题的解去逐渐逼近最终结果. 递归最重 ...

  5. C#开发EyeLink眼动仪的实验程序

    [题外话] Eyelink眼动仪是SR Research推出的一款眼动仪,很多高校都在使用其做实验.其官方提供了COM的接口,所以支持COM接口的开发平台都可以开发使用.官方甚至提供了一个C#的样例供 ...

  6. C#设计模式之桥接

    IronMan之桥接 前言 前面的几个篇幅都是在讲"部件"的生产已经简简单单的使用,以后可能要对"部件"进行升级,不是不对它本身升级,是其它方式的升级,可以让它 ...

  7. Struts2学习笔记 - Action篇<定义逻辑Action>

    有三种方法可以使一个Action处理多个请求 动态方法调用DMI 定义逻辑Acton 在配置文件中使用通配符 这文章就谈论一下定义逻辑Action 这里主要关注的是struts.xml配置文件,一般情 ...

  8. The transaction log for database 'xxxx' is full due to 'ACTIVE_TRANSACTION'

    今天查看Job的History,发现Job 运行失败,错误信息是:“The transaction log for database 'xxxx' is full due to 'ACTIVE_TRA ...

  9. JS函数无响应

    自己定义了一个函数,比如说叫 addClass(),当按钮单击的时候响应 在添加了一些第三方Open JS API后就没反应了 原因分析:在代码没变动的情况下,很有可能是自己定义的函数名和第三方的冲突 ...

  10. 【WP开发】JSON数据的读与写

    在不使用其他库的情况下,WP-RT应用中也可以处理JSON数据.主要的几个类都放到Windows.Data.Json命名空间中: IJsonValue接口作为用于封装JSON数据的规范,其中只读属性V ...