- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在 Entity Framework 中,DbContext类实现了IObjectContextAdapter接口(interface)。当我查看这个界面内部时,我发现只有一个属性
ObjectContext ObjectContext {get;}
但是 DbContext 类本身没有那个属性。现在:
这是怎么回事?
最佳答案
这是一个显式接口(interface)实现的例子。
所以要从理论上理解它,请看这个例子
interface IExplicit
{
void Explicit();
}
class Test : IExplicit
{
void IExplicit.Explicit()
{
//some implementation goes here
}
}
现在我们可以实例化一个新的 Test()
,但是要访问 IExplicit
实现,我们必须像这样转换类型
var testobj = new Test();
**will throw Compile time error.
testobj.Explicit();
**We can do.
((IExplicit)testobj).Explicit();
现在开始实际实现 dbcontext
DbContext implemented that property explicitly.So instance will have to be casted to its interface in order to be accessible.
public class DbContext : IObjectContextAdapter
{
ObjectContext IObjectContextAdapter.ObjectContext
{
get
{
...
}
}
}
您可以在此处找到显式接口(interface)文档 msdn .
关于entity-framework - 为什么 DbContext 实现了 IObjectContextAdapter 但没有公共(public) ObjectContext 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35626922/
我全新安装了带有更新 2 的 VS2012。我创建了一个“ASP.NET 动态数据实体 Web 应用程序”的新项目。然后我添加一个“ADO.NET 实体数据模型”,它是我从现有 SQLServerEx
我正在尝试将此类移植到 EF 核心: https://github.com/mehdime/DbContextScope/blob/master/Mehdime.Entity/Implementati
在 Entity Framework 中,DbContext类实现了IObjectContextAdapter接口(interface)。当我查看这个界面内部时,我发现只有一个属性 ObjectCon
我是一名优秀的程序员,十分优秀!