2013-05-06 133 views
-3

我有一個簡單的搜索,我想返回一個非常簡短的描述部分。我想抓住i.Description的前200個字符。這樣做的最好方法是什麼?Return簡要說明

(
         i.ItemName.Contains(keyword) || 
         i.Email.Contains(keyword) || 
         i.Description.Contains(keyword) || 
         i.ItemID.Equals(searchID) 
        ) 
         select new 
         { 

          Name = i.ItemName, 
          Phone = i.Phone, 
          Type = i.Type, 
          Email = i.Email, 
          ID = i.ItemID, 
          Desc = i.Description 
          // I was hoping i could do with a .Length or something  

         }); 
+1

如果你要這樣進行昂貴的操作,您只需簡單地顯示整個能解密。 – 2013-05-06 15:40:25

+0

有沒有更好的方式來做到這一點,使它不那麼昂貴? – jackncoke 2013-05-06 15:41:39

+0

我假設它是某種SQl查詢,所以查詢本身很昂貴。 – 2013-05-06 15:56:54

回答

2
Desc = i.Description.SubString(0, Math.Min(i.Description.Length, 200)) 
2

您可以使用Take方法:

Desc = new string(i.Description.Take(200).ToArray());