字符串(String)
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.Lengthvar q =
from p in db.Products
where p.ProductName.Length < 10
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(3);
語句描述:這個例子使用Substring方 法返回產品名稱中從第四個字母開始的部分。
8.String.Substring (start, length)var q =
from e in db.Employees
where e.HomePhone.Substring(6, 3) == "555"
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(0, 5).Trim ();
語句描述:這個例子使用Trim方法返回雇員家庭電話號碼的前五 位,並移除前導和尾隨空格。
12.String.Insert(pos, str)var q =
from e in db.Employees
where e.HomePhone.Substring(4, 1) == ")"
select e.HomePhone.Insert(5, ":");
語句描述:這個例子使用 Insert方法返回第五位為 ) 的雇員電話號碼的序列,並在 ) 後面插入一個 :。
13.String.Remove(start)var q =
from e in db.Employees
where e.HomePhone.Substring(4, 1) == ") "
select e.HomePhone.Remove(9);
語句描述:這個 例子使用Remove方法返回第五位為 ) 的雇員電話號碼的序列,並移除從第十個 字符開始的所有字符。
14.String.Remove(start, length)var q =
from e in db.Employees
where e.HomePhone.Substring(4, 1) == ")"
select e.HomePhone.Remove(0, 6);
語句描述:這個例子使用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 的供 應商信息。