Ok、
EF5の既知のエンティティから不明な数の列を選択し、不明な数の列でフィルタリングする述語を作成する必要があります。そのうちの1つは常に子コレクションの名前になります。
だからこれは私が最終的にする必要があるものです
var q = db.Set<Entity>()
.Where(e => e.Code.Contains("q") || e.Translations.FirstOrDefault(t => t.Culture.ID == "whatever").Description.Contains("q"))
.Select(e => new
{
e.ID,
e.Code,
Name = e.Translations.FirstOrDefault(t => t.Culture.ID == "whatever").Description
});
しかし、式の述語を構築する方法がわかりません
e.Translations.FirstOrDefault(t => t.Culture.ID == "whatever").Description.Contains("q")
選択する列とフィルターするフィールドは文字列の配列として提供され、この場合、フィルターには常にが含まれます。
私は述語の作成に精通していますが、それは問題ではありません。これまで子コレクションを調べる必要がなかっただけでなく、その日の完全な「WTF」ポイントにいます:-)
正しい方向へのすべてのプッシュが最も適切です。