Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Entity framework 如何使ObjectContext私有化?_Entity Framework - Fatal编程技术网

Entity framework 如何使ObjectContext私有化?

Entity framework 如何使ObjectContext私有化?,entity-framework,Entity Framework,我创建了一个查询实体框架上下文的BLL。EDML文件位于同一BLL程序集中。它从表示层接受EF实体作为参数,并将EF实体作为结果返回。为了实现这一点,我将实体保持为公共实体,以便表示层可以创建它们,如DLL.TablName newRecord=new DLL.TableName()等。问题在于实体我的objectcontext也是公开的,因为它是公共的。我可以在设计器生成的代码中将其手动更改为private,但如果我对其进行任何更改,它将再次变为public。我在设计器中没有看到任何访问修饰符

我创建了一个查询实体框架上下文的BLL。EDML文件位于同一BLL程序集中。它从表示层接受EF实体作为参数,并将EF实体作为结果返回。为了实现这一点,我将实体保持为公共实体,以便表示层可以创建它们,如
DLL.TablName newRecord=new DLL.TableName()
等。问题在于实体我的objectcontext也是公开的,因为它是公共的。我可以在设计器生成的代码中将其手动更改为private,但如果我对其进行任何更改,它将再次变为public。我在设计器中没有看到任何访问修饰符设置。如何将ObjectContext设置为私有或内部


我仍处于层设计过程中,因此如果无法更改设计,我可以更改设计。

您可能会继承框架类并使用新关键字“隐藏”ObjectContext,如下所示:

public class DataContext : YourEFContext {

    private new ObjectContext ObjectContext { get; }

}
我很确定你想要这样的东西