Entity Framework でサポートされているプロジェクトである Cars と Trucks に 2 つのエンティティ セットがあるとします。車とトラックの両方が IDriveable を実装します
呼び出し元の関数がどのセットからロードされるかを知らなくても、Predicate または Dynamic Linq が特定の IDriveable を返すようにすることは可能ですか?
私が見た Dlinq のすべての例には、次のようなものがあります。
db.Cars.Where("ID==123");
「動的」部分は、既にテーブル/セットを選択した後に来ます。次のようなものが必要です
db.SomeMethod("Cars.Where(ID==123)");
述語に関しては、これまでに見た例は、次のようなリストに作用する関数です。
static bool greaterThanTwo(int arg)
{
return arg > 2;
}
これは、目的のセットへの参照が既にあることを前提としています。どのテーブルからレコードをロードするかを動的に伝える方法と、レコードの一意の ID をフィルター処理する方法が必要です。