|
|
1
5
即使您可以从sqldatareader继承,也不重要,因为您不能让sqlcommand创建派生类的实例。 在包装器中实现IDataReader实际上并不难,因为您只需遵从底层的sqldataReader。只是有点费时,但没那么糟。 但是我很好奇,你想要的资源是不是处理了连接?如果是这样,则commandBehavior枚举中有一个closeConnection成员,该成员确保在关闭数据读取器时关闭连接。
请注意,close/dispose在sqldatareader上是相同的。 最后,这里还有最后一个建议,它在过去对我很有帮助。请注意,在下面这个松散的示例中,您从开始到结束都拥有sqldatareader,即使您在每条记录上“让步”给调用者。
|
|
2
3
反转它;使用“隐藏”资源作为主要内容,实现IDisposable,然后在完成后关闭DataReader。 |
|
|
3
1
我前面没有我的IDE,但它应该看起来像
编辑--- 刚刚读了原始评论,我看到它有一个私有的构造函数,让我把我的vs2008和ill brb 看着它,每个人都在尝试这些花哨的解决方案,我唯一能做的就是
编辑---叹息,这是40分钟前丝般的发布。 |
|
|
A B · C#Excel自动调整列避免长文本时出错 1 年前 |
|
|
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 1 年前 |
|
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 1 年前 |
|
|
Sei · Avalonia/WPF将路由器传递到控制模板 1 年前 |