我特意写个异常语句,但系统就是不抛出异常,运行到这句就完了,下面就不运行了,程序也不报错,代码如下
int a = int.Parse("l-"); //这句就应该抛出异常,但现在是运行到这就不往下运行了,其他一切正常
DataRow desrow = FindRowFromCurrDs(int.Parse(desnode.Tag.ToString()));
if (desrow == null)
{
PubInfo.ShowMessage("没有找到目的节点,请确认!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
if (int.Parse(desrow["类别"].ToString()) == 3)
{
PubInfo.ShowMessage("目的节点为员工,不能将任何数据托放到员工上!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
if (JudgeRelation(orgnode, desnode))
{
PubInfo.ShowMessage("目的节点为原节点的子孙,不能进行这样的操作!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
DataRow orgrow = FindRowFromCurrDs(int.Parse(orgnode.Tag.ToString()));
if (int.Parse(desrow["类别"].ToString()) > int.Parse(orgrow["类别"].ToString()))
{
PubInfo.ShowMessage("目的节点的级别小于原节点的级别,不能进行这样的操作!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}我引用了一个别人写的类,也就只有调用这个类的时候才会出这问题,是不是这个类的什么属性设置问题?
int a = int.Parse("l-"); //这句就应该抛出异常,但现在是运行到这就不往下运行了,其他一切正常
DataRow desrow = FindRowFromCurrDs(int.Parse(desnode.Tag.ToString()));
if (desrow == null)
{
PubInfo.ShowMessage("没有找到目的节点,请确认!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
if (int.Parse(desrow["类别"].ToString()) == 3)
{
PubInfo.ShowMessage("目的节点为员工,不能将任何数据托放到员工上!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
if (JudgeRelation(orgnode, desnode))
{
PubInfo.ShowMessage("目的节点为原节点的子孙,不能进行这样的操作!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
DataRow orgrow = FindRowFromCurrDs(int.Parse(orgnode.Tag.ToString()));
if (int.Parse(desrow["类别"].ToString()) > int.Parse(orgrow["类别"].ToString()))
{
PubInfo.ShowMessage("目的节点的级别小于原节点的级别,不能进行这样的操作!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}我引用了一个别人写的类,也就只有调用这个类的时候才会出这问题,是不是这个类的什么属性设置问题?
try
{
……
}
catch(Exception e)
{
……//throw或者showmessage
}
像这行语句,如果没有异常捕获,程序运行到这就会由框架抛出错误,如果是在调试程序,则开发环境就会弹出错误,并定位到该行语句,我要的就是这效果
哪有这样搞的不过即使你在这个方法里面不抛异常
但至少你要在调用这个方法的外面捕捉异常
那样就直接向上抛了你要是看他的异常内容,你可以在外面的Catch里面去找