有没有办法在ASP.NET中捕获'System.OutOfMemoryException'?

时间:2014-04-09 09:54:32

标签: c# asp.net out-of-memory try-catch

我正面临这个问题,每次将大量数据绑定到ASPxPivotGrid时,我都会收到'System.OutOfMemoryException'。

我想知道是否有任何方法可以应用类似处理此异常的内容并建议用户执行其他操作,而不是显示错误页面?感谢。

添加:我在这篇文章之前试过试试。它无法正常工作,错误页面仍然显示。

我有一个按钮,当我点击按钮时,它会触发一个函数将数据绑定到我的pivotgrid。

    private void button_click(object sender, EventArgs e)
    {
      try
       // codes
      catch (Exception ex)
       // message
     }

    private void BindPivotGrid(object sender, EventArgs e)
    {
      try
       // codes
      catch (Exception ex)
       // message
     }

但错误页面仍然会弹出。

http://postimg.org/image/np1ylbmbx/

P / s:我为我糟糕的英语道歉:)

此致

2 个答案:

答案 0 :(得分:0)

将您的代码放在try块中:

try
{
//your code here
}
catch(Exception)
{
//put the code that executes what the user must see.
}

请注意,catch会捕获程序遇到的任何类型的异常。

答案 1 :(得分:0)

什么阻止你添加try..catch块,并在catch显示错误弹出?还假设您使用的是已添加到主题中但未作为标记添加的asp.net。

代码将起到以下作用:

<强> aspx.cs

try
{
    //Your OutOfMemoryException code here
}
catch(Exception ex)
{
    ScriptManager.RegisterStartupScript(yourControlId, yourControlId.GetType(), "tabs" , "jsMEthodName('"+ ex.Message +"')");
}

<强> ASPX

<script type="text/javascript">

function jsMEthodName(exmsg) {
    alert(exmsg);
}
</script>

希望这有帮助。