文章出處

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 < 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 的供應商信息。


文章列表




Avast logo

Avast 防毒軟體已檢查此封電子郵件的病毒。
www.avast.com


全站熱搜
創作者介紹
創作者 大師兄 的頭像
大師兄

IT工程師數位筆記本

大師兄 發表在 痞客邦 留言(0) 人氣()