实体框架Connection.Open connection.close

时间:2013-11-11 14:47:41

标签: sql-server vb.net entity-framework

当我像这样创建一个简单的EntityFramework连接时

Private Function ConnectEF() As ObjectContext
        Dim context1 As EstFarmacologicaEntities = New EstFarmacologicaEntities(tools.connectionstring("EstFarmacologica"))
        Return contexto1
End Function

然后我调用objectcontext ...

Public Function ListGroupFarma() As Ilist
        Dim context2 As EstFarmacologicaEntities = ConnectEF()
        Dim listFarma As IList = (From ... Where .. Select ...).ToList()
        context2.Dispose()
        Return listFarma
    End Function

是否有必要处理context1?当使用'SqlConnection.Close'时...... 我的意思是Context1或其连接将保留在内存中?我怎么检查呢?

1 个答案:

答案 0 :(得分:0)

SqlConnection Dispose方法在内部调用其Close方法。 Close上没有ObjectContext方法。

如果它实现了IDisposable,请正确处理它,你永远不知道该类的作者在他们的dispose方法中包含什么,并且如果你自己尝试自己做的话可能会丢失一些东西(比如调用{{1} } .Close()代替使用SqlConnection块。