Entity framework 4 在EF模型中手动加载关联

Entity framework 4 在EF模型中手动加载关联,entity-framework-4,Entity Framework 4,我需要使用参数化的表值函数来检索关联的数据(TVFs抽象了实际的数据库表),但我想使用EF提供的所有好东西。因此,查看从EDMX生成的导航属性代码,我看到RelationshipManager包装了关联的填充等 因此,我的问题是:在生成对RelationshipManager的调用之前,我是否可以从DB(通过TVFs)检索我需要的结果并将其附加到上下文,以及是否可以阻止RM本身访问数据库?EF4不支持TVF。TVF仅在.NET 4.5中可用,您可以在Linq to entities查询中使用它们

我需要使用参数化的表值函数来检索关联的数据(TVFs抽象了实际的数据库表),但我想使用EF提供的所有好东西。因此,查看从EDMX生成的导航属性代码,我看到RelationshipManager包装了关联的填充等


因此,我的问题是:在生成对RelationshipManager的调用之前,我是否可以从DB(通过TVFs)检索我需要的结果并将其附加到上下文,以及是否可以阻止RM本身访问数据库?

EF4不支持TVF。TVF仅在.NET 4.5中可用,您可以在Linq to entities查询中使用它们。NET 4.5默认情况下也使用POCO实体,现在强烈建议在实体内部不使用
RelationshipManager
的情况下使用POCO实体(用于延迟加载的动态代理除外)。

我认为更公平的说法是,TVFs在4.0中的报告有限。您当然可以通过手动编辑EDMXML来导入TVF,并从上下文中调用它们。