在csharp或vb.net中,我们使用using
语句,原因我们知道:可以打开数据库并自动关闭它而无需明确写入。
我想在VBA
C#
using(var db=new MyDbContext()){
//do work here
}
vb.net
Using s = New MyDbContext()
'--..do work here
End Using
答案 0 :(得分:2)
回答你的第一个问题,正如你所暗示的,Using
只是在实现Dispose()
接口的对象实例上调用IDisposable
的语法糖。
相当于
Dim s as MyDbContext
Try
s = New MyDbContext()
// ...
Finally
s.Dispose()
End Try
由于VBA
不支持Using
糖,并且在没有结构化Try..Catch
异常处理的情况下,您需要在所有路径上明确调用Dispose()
它控制对象的生命周期(在您的情况下为MyDbContext
)。在这种情况下,您也可以使用.Close()
答案 1 :(得分:0)
没有VBA等同于Using
语句。
VBA developer documentation提供样本甚至可下载的VBA文档的离线版本。