如何通过外键查找记录

本文关键字:查找记录 何通过 | 更新日期: 2023-09-27 18:11:56

我对泛型很陌生。我正在调用一个方法传递外键id从不同的表搜索记录。这是我的代码

    public void Get<T>(long id) where T : class
    {
        var userdetails = Db.Set<T>().Find(id);
    }

其中T可以是任意表,id是T表中的外键。我想通过外键使用查找方法搜索记录。

如何通过外键查找记录

从传递与一个表相关的不同表的位置调用Get方法。

你可以使用expression:

public void Get<T>(Expression<Func<T, bool>> predicate) where T : class
{
    var userdetails = Db.Set<T>().FirstOrDefault(predicate);
}

然后像下面这样调用它:

repo.Get<MyClass>(x=>x.FieldName == xxxx);