我创建了一个查询Entity Framework上下文的BLL。 EDML文件在同一个BLL程序集中。它接受EF实体作为表示层的参数,并返回EF实体作为结果。为了实现这一点,我保持实体公开,因此表示层可以创建它们像DLL.TablName newRecord = new DLL.TableName()
等。问题是实体我的objectcontext也暴露,因为它是公开的。我可以在设计器生成的代码中手动将其更改为私有,但如果我对其进行任何更改,它将再次变为公共。我在设计器中没有看到任何访问修饰符设置。如何将ObjectContext设为私有或内部?
我还在图层设计过程中,所以如果无法完成,我可以改变我的设计。
答案 0 :(得分:2)
您可能会继承您的Framework类并使用new关键字“隐藏”ObjectContext,如下所示:
public class DataContext : YourEFContext {
private new ObjectContext ObjectContext { get; }
}
我很确定你想要这样的东西......