使用以下代码:
SqlCeDataReader myReader = cmd.ExecuteReader(CommandBehavior.SingleRow);
itemID = myReader.GetString(0);
packSize = myReader.GetString(1);
...我得到一个例外,“行/列不存在数据”
在这种情况下,我希望它默默地“中止”而不是抛出异常。有没有办法在尝试分配之前先进行测试?
我试过这个,但它没有用:
SqlCeDataReader myReader = cmd.ExecuteReader(CommandBehavior.SingleRow);
if (null != myReader.GetString(0))
{
itemID = myReader.GetString(0);
}
if (null != myReader.GetString(1))
{
packSize = myReader.GetString(1);
}
另一种可能性是将它包装在 try..catch 中并“吃掉”异常,但我不知道这是否是最好的方法......