asp.net 中WinForm出现无法处理的异常解决办法
,然后进行处理,但是这段代码中用到了BeginInvoke的语句块,而我使用了匿名方法,那么在匿名方法中的异常,外面是捕捉不到的。所以会出现无法处理的异常情况,正确的代码应该这样:
<table width="620" align="center" border="0" cellpadding="1" cellspacing="1" style="background:#FB7"> <tr> <td width="464" height="27" bgcolor="#FFE7CE"> 代码如下</td> <td width="109" align="center" bgcolor="#FFE7CE" style="cursor:pointer;" onclick="doCopy('copy5857')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy5857>this.BeginInvoke(new MethodInvoker(delegate()
{
bool flag = false;
try
{
flag = service.Authentication();//此处可能造成异常
if (flag)
{
this.DialogResult = DialogResult.OK;
}
else
{
MessageBox.Show("用户名或者密码错误。", "警告", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
catch (Exception ex)
{
Program.notifity.ShowBalloonTip(2000, "应用程序错误", ex.Message, ToolTipIcon.Error);
}
}));
上面代码中调用了WebService,但是断网的时候会出现无法连接,因为写在了匿名方法中,所以this.BeginInvoke外面的tryf块无法捕获WebService产生的异常信息,所以,要将tryf块写在里面。
您可能感兴趣的文章:
asp.net 中WinForm出现无法处理的异常解决办法
无法执行程序。所执行的命令为 C:Windows 问题解决办法
百度卫士清理注册列表后系统异常如何解决
.NET 2.0中的企业库异常处理块
c# WinForm捕获全局变量异常的办法
NET MVC与WebForm的区别
WinForm中DataGridView重新绑定后前台界面不刷新的问题解决办法
php中的异常机制理解分析
C# Winform调用WEB Service API的示例代码
asp.net处理ajax 数据异常方法