2013-11-11 5 views
0

Когда я создать простое соединение EntityFramework как этотEntity рамки Connection.Open connection.close

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» ... i означает, что Context1 или его соединение останется в памяти? как я могу это проверить?

ответ

0

SqlConnection s Dispose метод вызывает свой метод Close внутри. Метод Close отсутствует на ObjectContext.

Если он реализует IDisposable, утилизировать его должным образом, вы никогда не знаете, что автор этого класса входит в их метод Dispose и может в конечном итоге что-то отсутствует, если вы попытаетесь сделать это самостоятельно (как вызов .Close() на SqlConnection вместо использования a Using блок).

Смежные вопросы