IQueryable<T>
次の内部でオブジェクトを宣言すると、この問題が発生します。
select new { };
次のような非LINQメソッドTostring()
またはその他の関数を呼び出したい場合の一部:
select new
{
TFPricep = CurrancyHelper.DecimalToCurrency(TFPrice),
TFDatep = TFDate.Tostring()
};
次のような有名なエラー メッセージが表示されます。
LINQ to Entities はメソッド 'foo' を認識しません。
だから何が起こるかというToList()
と、データベースからデータを取得してから、リストで foreach ループを実行し、ToString()
パフォーマンスの問題がある各リストレコードでなどの関数を呼び出す必要があります。私がテストした限り、LINQ to SQL にはそのような問題はありませんでしたが、この問題はまだ存在しています。Entity Framework
クエリを実行するときにLINQメソッドを呼び出さず、ループごとにそのような実行を防ぐ方法はあるのだろうか?