使用显式加载加载具有现有childid的集合

本文关键字:加载 集合 childid | 更新日期: 2023-09-27 18:11:32

是否有可能使用现有的子id显式重新加载DbEntityEntryReload()的功能?参见代码中的注释。

using (var context = new MyContext())
{
    var parent = new Parent()
    {
        ParentId = 1,
        Childs = new List<Child>()
        {
            new Child()
            {
                ChildId = 2,
                ParentId = 1
            }
        }
    };
    context.Parents.Attach(parent);
    context.Entry(parent)
        .Collection(b => b.Childs) // Load only Employee with employee id of 2
        .Query()
        .Load(); //Is it possible to Reload only ChildId = 2?
}

使用显式加载加载具有现有childid的集合

是的,这是可能的,在Query方法之后,你可以对你想要加载的相关实体应用过滤器:

 context.Entry(parent)
        .Collection(b => b.Childs) // Load only Employee with employee id of 2
        .Query()
        .Where(e=>e.ChildId==2)
        .Load();