Entity Framework - "Unable to create constant value of type 'Closure type'..." エラー。
2023-08-13 05:23:17
質問
なぜエラーが発生するのでしょうか。
型'Closure type'の定数値を作成できません。以下のものだけが プリミティブ型(例えばInt32, String, Guid)のみサポートされています。 このコンテキストではサポートされていません。
以下の Linq クエリーを列挙しようとすると?
IEnumerable<string> searchList = GetSearchList();
using (HREntities entities = new HREntities())
{
var myList = from person in entities.vSearchPeople
where upperSearchList.All( (person.FirstName + person.LastName) .Contains).ToList();
}
更新 : 問題の切り分けのために以下を試すと、同じエラーが発生します。
where upperSearchList.All(arg => arg == arg)
ということは、Allメソッドに問題があるようですね?何か提案はありますか?
どのように解決するのですか?
WHERE...IN"条件と同等のことをしようとしているように見えます。以下を参照してください。 LINQ to Entities を使って 'WHERE IN' スタイルのクエリを記述する方法 を参照してください。
また、この場合のエラーメッセージは特に役に立たないと思うのですが、その理由は
.Contains
が括弧で囲まれていないため、コンパイラは述語全体をラムダ式として認識してしまうからです。
関連
-
[解決済み] Entity FrameworkとLINQ to SQLの比較
-
[解決済み] Entity Frameworkにおける最速の挿入方法
-
[解決済み] Entity Frameworkで生成されたSQLを表示するにはどうすればよいですか?
-
[解決済み] LINQ-to-SQLとストアドプロシージャの比較?[クローズド]
-
[解決済み] LINQを使用してデータをPivotすることは可能ですか?
-
[解決済み] IQueryableとIEnumerableの違いは何ですか[重複]。
-
[解決済み] LINQ OrderByとThenByの比較
-
[解決済み] Linq to SQL 「where [column] in (list of values)」はどうやるの?
-
[解決済み] Linq Queryで "Unable to create constant value of type System.Object... "と表示されることがあるのですが、なぜですか?
-
[解決済み] LINQにおける標準偏差
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] C# LINQ リスト内の重複を検索する
-
[解決済み] LINQで複数の "order by "を使用する
-
[解決済み】Entity Framework。このコマンドに関連するオープンなDataReaderがすでに存在します。
-
[解決済み] エンティティフレームワークのLinqクエリInclude()複数の子エンティティ
-
[解決済み] LINQ-to-SQLとストアドプロシージャの比較?[クローズド]
-
[解決済み] LINQ を使用して、オブジェクトのリストから一意のプロパティのリストを取得するにはどうすればよいですか?
-
[解決済み] Linqのgroup byのカウントを持つ
-
[解決済み] LINQ: 区分された値
-
[解決済み] Linq:where節に条件を条件付きで追加する
-
[解決済み] イニシャライザー、エンティティメンバー、エンティティナビゲーションプロパティのみ対応