2013-05-06 134 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());