如果你有一个蛮力搜索用户不知道数据类型,那么我们可以做这样的事情吗?在这种情况下嵌套尝试捕获合理吗?
if (search.Length > 0 && comboBox1.Text.Equals("Data Type Not Known"))
{
try
{
ParentGraph p = new ParentGraph(search);
}
catch (NoDataFoundException ndfe)
{
//it fails so try different data type
try
{
CompoundGraph c = new CompoundGraph(search);
}
catch(NoDataFoundException ndfe)
{
//failed so try final type
try
{
BatchGraph b = new BatchGraph(search);
}
catch(NoDataFoundException ndfe)
{
MessageBox.Show("Data could not be linked to a particular search")
}
}
}
}
,将“使用控制流异常”被调用,通常不是一个好主意,或者实际上的最佳做法 – 2011-04-28 09:28:16
正如Mitch所说,如果没有找到搜索结果,返回某种形式的结果并将结果用于流而不是抛出异常可能更好。 – Kane 2011-04-28 09:30:25