好的,这是微不足道的,但它一直困扰着我。我有这样的代码
oCmd = new SqlCommand("getBooking", oCon);
oCmd.CommandType = CommandType.StoredProcedure;
oRs = oCmd.ExecuteReader();
do while (oRs.Read()) {
// do stuff
}
oRs.Close();
oCmd.Dispose();
但是我可以像这样移动Dispose
到ExecuteReader
:
oCmd = new SqlCommand("getBooking", oCon);
oCmd.CommandType = CommandType.StoredProcedure;
oRs = oCmd.ExecuteReader();
oCmd.Dispose();
do while (oRs.Read()) {
// do stuff
}
oRs.Close();
我试过了,它有效,但感觉就像我很顽皮。这种方法有问题吗?我问是因为经常需要在 中重用SqlCommand
对象do while
,而且我不想创建多个SqlCommand
对象。