2016-05-14 27 views
0

これは私のコードです。テーブルM_Operatorを作成しましたが、4文字以上の長さのテーブルから名前を取得したいとします。 は、私はこのエラーを取得しています:TakeWhileがサポートされていないので、おそらくですクエリ演算子 'TakeWhile'はサポートされていません

public partial class _Default : System.Web.UI.Page 
{ 
    DataClassesDataContext dbcon = new DataClassesDataContext(); 

    protected void Page_Load(object sender, EventArgs e) 
    { 
     if (!IsPostBack) 
     { 
      Get(); 
     } 
    } 
    public void Get() 
    { 
     var Operands = (from a in dbcon.M_Opearators 
         select new 
         { 
          a.Id, 
          a.Name, 
          a.Salary 
         }).TakeWhile(a=>a.Name.Length<4); 
      gridEmployee.DataSource = Operands; 
     gridEmployee.DataBind(); 
    } 
} 
+0

TakeWhileは、アイテムのセットの順序に依存します。これは本当に欲しいものですか?あるいは、注文に関係なくすべての要素が欲しいですか? –

答えて

1

The query operator 'TakeWhile' is not supported.

はここに私のコードです。

代わりwhereをお試しください:

var Operands = (from a in dbcon.M_Opearators 
       where 
        a.Name.Length > 4 // names longer than 4 characters 
       select new 
       { 
        a.Id, 
        a.Name, 
        a.Salary 
       }).ToList(); 
関連する問題