Vb.net Visual Basic.NET中的伪EF DBContext
我找到了在C中伪造DBContext的解决方案。创建接口IDbContext。对于生产代码,我创建了一个LifeDbContext,它继承自DbContext并实现IDbContext。对于单元测试,我创建了一个类FakeDbContext,该类还实现了IDbContext并使用集合伪造数据库。。。好的 但是现在我必须用Visual Basic.NET来完成它。因为我必须隐式实现接口IDbContext的每个成员,所以我不能实现DbContext基类的成员。 在c语言中,不需要显式实现接口的成员 有什么想法吗 这是我的代码:Vb.net Visual Basic.NET中的伪EF DBContext,vb.net,entity-framework,Vb.net,Entity Framework,我找到了在C中伪造DBContext的解决方案。创建接口IDbContext。对于生产代码,我创建了一个LifeDbContext,它继承自DbContext并实现IDbContext。对于单元测试,我创建了一个类FakeDbContext,该类还实现了IDbContext并使用集合伪造数据库。。。好的 但是现在我必须用Visual Basic.NET来完成它。因为我必须隐式实现接口IDbContext的每个成员,所以我不能实现DbContext基类的成员。 在c语言中,不需要显式实现接口的成员
Public Interface IMyDbContext
Property Orders As IDbSet(Of Oders)
...
ReadOnly Property Database() As Database
Function SaveChanges() As Integer
ReadOnly Property Configuration As Infrastructure.DbContextConfiguration
End Interface
Public Class MyDbContext
Inherits DbContext
Implements IDbContext
Public Property Orders As IDbSet(Of Orders) Implements IMyDbContext.Oders
...
Public ReadOnly Property Database() As Database Implements ILimsDbContext.Database
Get
Return MyBase.Database
End Get
End Property
Public Function SaveChanges() As Integer Implements IMyDbContext.SaveChanges
Return MyBase.SaveChanges()
End Function
Public ReadOnly Property Configuration() As Infrastructure.DbContextConfiguration Implements IMyDbContext.Configuration
Get
Return MyBase.Configuration
End Get
End Property
End Class
我不喜欢的是在MyDbContext中隐藏已经在DbContext中实现的成员,仅用于显式实现接口。您可以修改t4模板以添加接口和实现子句,但这会将您锁定在自定义t4实现中。不久前,我在一篇关于添加属性日志的帖子中做了一些类似的事情。看看是否有帮助。您能给我们看一下您的代码吗?