字串(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.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 的供應商資訊。

arrow
arrow
    文章標籤
    LINQ LINQ to SQL
    全站熱搜
    創作者介紹
    創作者 Jimmy 的頭像
    Jimmy

    吉米.NET

    Jimmy 發表在 痞客邦 留言(0) 人氣()