代码之家  ›  专栏  ›  技术社区  ›  JamesStuddart

使用数据存储库模式的实体框架-解压

  •  0
  • JamesStuddart  · 技术社区  · 15 年前

    我一直在实施一个新的项目,我决定使用存储库模式和实体框架。

    我已经成功地实现了基本的CRUD方法,而且我还没有进入我的deeploads。

    从我能找到的所有示例和文档中,我需要调用如下内容:

    public Foo DeepLoadFoo()
    {
        return (from foobah in Context.Items.Include("bah").Include("foo").Include("foofoo") select foo).Single();
    }
    

    这对我不起作用,也许我太懒惰了,但我想达到的目标是:

    public Foo DeepLoadFoo(Foo entity, Type[] childTypes)
    {
        return (from foobah in Context.Items.Include(childTypes).Single();
    }
    

    这样的事情是可能的,还是我一直坚持include.include.include?

    谢谢

    1 回复  |  直到 15 年前
        1
  •  0
  •   Thomas    15 年前

    这个 blog post 提到EntityFrameworkObjectContext拥有关于实体及其属性的所有元数据。因此,也许您可以使用元数据来遍历实体的属性,以及它们的子属性等。

    换句话说,我相信您应该能够使用元数据自动组合 Include 对您的查询进行调用。