在试图追踪仅在某些情况下发生的空引用异常的原因时,我遇到了以下代码:
SqlCeDataReader IdValsReader = IdValsCMD.ExecuteReader();
if ((IdValsReader.Read()) && (!IdValsReader.IsDBNull(0)))
{
return string.Format("{0};{1};{2};{3};{4};{5};{6};{7};",
IdValsReader.GetValue(DESCRIPTION_INDEX),
. . .
}
IdValsReader.Close();
...并想知道我是否应该在 IdValsReader.Close() 之后添加这一行:
IdValsReader.Dispose();
我确实这样做了,但似乎没有什么区别;我应该把它留在里面还是去掉它?