2012-03-28 3 views
2

私は最初のまたは最後の名前が特定の文字で始まる顧客を返すlinqラムダ式を作成しようとしています。しかし、私は.selectでエラーが発生します:演算子 '。'ラムダ式に適用することはできません

演算子 '。'ラムダ式には適用できません。

public JsonResult GetCust(string term) 
{ 
    var data = context.Customers 
      .Where((dr => dr.First.StartsWith(term) == true) || (dr => dr.Last.StartsWith(term) == true)) 
      .Select(dr => new { Name=String.Concat(dr.First, dr.Last), Adrs = dr.Street, value = dr.CustID }) 
      .Take(10); 
    return Json(data, JsonRequestBehavior.AllowGet); 
} 

どのようにすれば必要なデータを返すことができますか?次の行で

+0

OPS ... は次のようになります。 .Where((DR = > dr.First.StartsWith(term)== true)||(dr => dr.Last.StartsWith(term)== true))) – Tihi

答えて

2

:あなたは2ラムダ式に||演算子はを使用している

.Where((dr => dr.First.StartsWith(term) == true) || (dr => dr.Last.StartsWith(term) == true)) 

WHERE句は、より次のようになります。私が単に.where 内の別の閉じ括弧を入力するのを忘れているようだ

.Where(dr => dr.First.StartsWith(term) || dr.Last.StartsWith(term)) 
+0

質問を投稿して数分後に見つけたように私の表現の中の不要な括弧。 – Tihi

関連する問題