2017-12-20 19 views
0

を認識しません。where句でこのエラーが発生します。 エンティティフレームワークでlinQクエリを使用してSQL Serverからレコードを取得しようとしています。エンティティへのlinQは、メソッドModels.Repository.Stepent get_Item(Int32)のメソッド

var Stud = contextSchool.Student.Where(x => x.STDNT_ID == lstStudent[i].StudentID).FirstOrDefault(); 

変数にリストの値を格納してwhere句で使用すると、リストでは動作しますが、リストでは機能しません。

完全なエラー: linQ to entitiesは、メソッドModels.Repository.Student get_Item(Int32) 'メソッドを認識せず、このメソッドをストア式に変換することはできません。

+1

[LINQ to Entities]の複製がInt32 get \ _Item(Int32)メソッドを認識しません(https://stackoverflow.com/questions/5233054/linq-to-entities-does-not-recognize-the- method-int32-get-itemint32) – Shoe

+0

エラーは同じかもしれませんが、理由は異なります。 – angryBird

+0

理由は**まったく同じ**です。 EFが配列取得操作をSQLに変換させようとしています。 – DevilSuichiro

答えて

1

他のプロジェクトでもこのエラーが発生しますが、問題はget_Itemやf.e.などのメソッドを使用できないことです。 urlinqコマンドのAddDays()。

だから私はちょっとちょっと遊んでする必要があります。

Uのlinqコマンドの前にオブジェクト(リストなど)を作成し、必要なデータ(メソッドごと)を入力して、urlinqコマンドで変数を使用する必要があります。

+0

既に完了!うまく動作します。途中でありがとう。 – angryBird

関連する問題