我得到一个异常(在一个while循环终止之后,它没有被我发布的方法中的catch块记录,或者在我添加的全局异常处理程序中记录)(没有更多的记录是读取)。
在调试这个,专心凝视这段代码时,我开始怀疑它是否应该保留:
using (var conn = new OleDbConnection(
@"Provider=Microsoft.Jet.OLEDB.4.0;User ID=Platydude;Password=Platypup;Data
Source=C:\Duckbill\DATA\DuckbillDAT03.MDB;Jet OLEDB:System
database=C:\Duckbill\Data\platypus.mdw"))
{
using (var cmd = conn.CreateCommand())
{
. . .
}
}
......或者简单地说:
using (var conn = new OleDbConnection(
@"Provider=Microsoft.Jet.OLEDB.4.0;User ID=Platydude;Password=Platypup;Data
Source=C:\Duckbill\DATA\DuckbillDAT03.MDB;Jet OLEDB:System
database=C:\Duckbill\Data\platypus.mdw"))
using (var cmd = conn.CreateCommand())
{
. . .
}
它有什么不同吗?它似乎没有 - 两种方式完全相同的事情发生;但有没有一种方法比另一种方式更安全? IOW:哪一个是首选技术?
答案 0 :(得分:4)
从功能上讲,它们是相同的。在风格上,我更喜欢后者(就像大多数人一样,从我所看到的),因为它消除了不必要的括号和缩进,并且更自然地读取(就像它说“使用这个和那个”而不是“使用这个{使用它{“)。