最近我在vb.net中做一个项目,遇到了一个神秘的数据库连接问题。这是我从别人那里继承来的一个项目,他们用了这样的东西:
Dim reader As SqlDataReader = myCommand.ExecuteReader(CommandBehavior.CloseConnection And CommandBehavior.SingleRow)
//after reading data
reader.Close()
似乎这会导致连接始终无法正确关闭。我已经删除了commandbehavior.singlerow,它现在似乎运行正常,但我想知道是否有其他人遇到过这种情况?有人知道为什么这样不行吗?我以前见过这样的命令行为组合,但它从来没有引起过这个问题。
最佳答案
组合标志时,请使用或运算符而不是和:
Dim reader As SqlDataReader = myCommand.ExecuteReader(CommandBehavior.CloseConnection Or CommandBehavior.SingleRow)