我发现在我的每个查询(需要自己的命令或编写 parameters.clear())上编写 using 语句非常烦人,有时需要在 using 块之外声明变量。与没有处理对象的版本相比,它非常烦人,看起来更脏。
我需要处理它吗?如果我不这样做会怎样?我确实知道在对象具有该接口(interface)时处理对象的良好做法。
最佳答案
快速浏览一下 Reflector,它似乎是在其 PreparableStatement 上调用 CloseStatement(),然后在其父类(super class)上调用 Dispose(),包括 System.ComponentModel.Component。在链上的某个地方,它最终调用 NativeDriver.CloseStatement32(id),它将命令写入连接流。
这不是我想跳过的那种事情。为什么要冒险?
这是您需要调整自己的想法的时候之一。您可能认为 using
看起来“脏”,但是——就像齿轮系统上闪闪发光的新鲜油一样——它实际上是清洁的标志。您也许可以编写一个抽象来隐藏它,但您不应该摆脱它。
关于.net - 我需要处理 MySqlCommand 吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2899138/