.NET Tutorials, Forums, Interview Questions And Answers
Welcome :Guest
Sign In
Win Surprise Gifts!!!

Top 5 Contributors of the Month
Gaurav Pal
Post New Web Links

Exception handling in Global.asax of ASP.net

Posted By:      Posted Date: October 01, 2010    Points: 0   Category :.NET Framework

I want to handle exceptions in my applications in Global.asax and transfer the exception to my custom error page, so that is in a central place. I want to take this exception object into my oopserror.aspx page and format it and display a custom message. i tried to use GetLastError() in my oopsError.aspx page, but my exception object was always null. Following is the code snippet that i'm using and i'm getting exception.

void Application_Error(object sender, EventArgs e)
   // Code that runs when an unhandled error occurs
   Exception exception;
   exception = Server.GetLastError();

   Session.Add("Exception", exception);


Following is the exception when the above code is executed.

{"Session state is not available in this context."}
   at System.Web.HttpApplication.get_Session()
   at UserInterface.Global.Application_Error(Object sender, EventArgs e) in C:\UserInterface\Global.asax.cs:line 51
   at System.EventHandler.Invoke(Object sender, EventArgs e)
   at System.Web.HttpApplication.RaiseOnError()

Is there a way that i can securly take my session object from global.asax to my oopserror.aspx? Any ideas?

View Complete Post

More Related Resource Links

Global Exception Handling with ASP.NET

After your global exception handler has done its work, you'll want to redirect the users of your website to a friendly page that tells them that something has gone wrong, and then provide them with customer support information as well as a link back to your web application's home page.

Global Exception Handling

Hi,   I followed thsi link to implement gloabl exception Handling in winforms app   http://msmvps.com/blogs/deborahk/archive/2009/09/02/global-exception-handler-winforms.aspx?CommentPosted=true#commentmessage   I am geting thwe following errors on this line in the main   Public Shared Sub Main() Application.ThreadException += New ThreadExceptionEventHandler(Application_ThreadException) ' --Errors here on this line   Dim dlg As New frm_Login   If dlg.ShowDialog() = DialogResult.OK Then   Dim frm As New frmMDI_Manager frm.ShowDialog()   End If   End Sub   Error 7 'Public Shared Event ThreadException(sender As Object, e As System.Threading.ThreadExceptionEventArgs)' is an event, and cannot be called directly. Use a 'RaiseEvent' statement to raise an event.  Error 8 Delegate 'System.Threading.ThreadExceptionEventHandler' requires an 'AddressOf' expression or lambda expression as the only argument to its constructor.  Can any one suggest how to get it working? Thanks  

Empty Catch in Global.asax to prevent exception from stopping a web application?



I'm using a static Timer in my Global.asax to run a method at regular intervals. When the method throws an exception, my application is stopped. I have used an empty catch to prevent exceptions from stopping the application something like below code. Is there a disadvantage to use such an approach?


 protected void Application_Start(object sender, EventArgs e)

 public class TimerStarter
            private static System.Threading.Timer threadingTimer;

            public static void StartTimer()
                if (null == threadingTimer)
                    threadingTimer = new System.Threading.Timer(new System.Threading.TimerCallback(CheckData),HttpContext.Current, 0, 50000);

            private static void CheckData(object sender)
                   // a method that reading xml file from another url              
                    // empty catch to prevent stopping the application




Global.Asax - Web.Http Exception



        I m having a datagrid and for client side events I m using Javascript. I have few other buttons in the same page.

when I click on datagrid and select, it is working fine. After that, if I click on any other button in the Page, It is directly going to global.asax and throwing exception.

If I click directly on other buttons, they are working fine. Once I click on Datagrid and try to click on other buttons, it is throwing that exception.


WCF Global Exception Handling



In Web Applications, you can tap into Application_Error in Global.asax


In ASMX Web Services, you can write a Soap Extension where you can get at any exception before it gets sent to the client


How can I have global exception handling in WCF services hosted in IIS?


At the moment, I've got Try Catches on every one of my methods (in the Catch I then simply call a generic exception handler).


Is there a better way? Basically I don't want to have to put Try Catches in each of my methods.


Every self-respected programmer should include exception handling techniques. Sometimes your application will generate an error. Regardless of who was responsible for this error, the programmer or the user, it is up to the first to include the necessary exception handling techniques to keep his/her program from crashing. The .Net environment provides useful techniques for avoiding disastrous errors such as try-catch statements and user-defined exceptions.

SQL Server 2005 Try and Catch Exception Handling

I'm pretty excited to see that there is some real error handling for T-SQL code in SQL Server 2005. It's pretty painful to have your wonderfully architected .NET solution tainted by less-than-VBScript error handling for stored procedures in the database. The big difference being the addition of TRY..CATCH blocks. Let's take a look:

Error while using exception handling block el 4.1


Hi Folks,


i am trying to use tyhe exception handling block of Enterprise library 4.1.


I just createda polisy and used IndexOutOfRangeException and added a replace handler and a logging handler to it.

I am using the NotifyRethrow PostHandlingAction to the exception.


During runtime I am getting an exception on the HandleException event, The exception is added below:



Object reference not set to an instance of an object.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.

Source Error:

Line 42:             catch (Exception ex)
Line 43:             {
Line 44:                 bool reThrow = ExceptionPolicy.HandleException(ex, "ReplacePolicy");
Line 45:         

Data Points: SQL Server 2005 XML Support, Exception Handling, and More


SQL Server 2005 includes several important improvements to the Transact-SQL (T-SQL) language. One added feature is a new kind of trigger that fires when data definition language (DDL) statements run.

John Papa

MSDN Magazine May 2006

Error Handling: Throwing Custom Exception Types from a Managed COM+ Server Application


Exception handling semantics in .NET are based on type, so you can create custom exceptions that have their own properties and methods. In .NET, exceptions are first-class citizens, and since they're the built-in error handling mechanism, all .NET-compliant languages must support exceptions. In addition, COM+ services are available to .NET code as Enterprise Services, so you can leverage exceptions in your Enterprise Services design.In this article the author describes custom exceptions, throwing exceptions across COM interop boundaries, and working with Enterprise Services.

Bob DeRemer

MSDN Magazine March 2004

Quick Error messages with Global.asax

The article Quick Error messages with Global.asax was added by lykasd on Wednesday, August 11, 2010.

Error pages without any effort void Application_Error(object sender, EventArgs e) { Server.Transfer("/error.aspx"); //Displays the error page } In error.aspx add this to the content area. p>We're sorry, but the %=Server.GetLastError

Windows 7, IIS 7.5 and VS2010: can't edit global.asax


Hey and thanks!


As the subject line notes the software in use, anyone have an idea why I can't edit global.asax in VS2010 (being ran with the 'run as administrator' advanced property check box checked)?  The file properties in explorer show local machine admins have full control (I am in that category) and also that IIS has windows auth enabled for the default web site.  What is this other level of security on here that I'm missing?  I can edit web.config, vb files and general aspx files with no problem--just the global.asax file causing a headache...





Bad email address exception handling

 I have a form that used to send an email to someone who had posted  a listing on my site, with a copy to the sending user. The code below is intended to catch the exception that occurs when email address of the person posting the listing (TxtBxTo.Text) is not valid, and also intended to catch the (unlikely) event that the user has entered and confirmed an invalid email (TxtBxEmail.Text) for himself on the form. I have tested this code for all combinations of valid and invalid email addresses for the listing poster and the user filling out the form and sending the email Everything works fine except for the situation where the email address for the listing poster is valid but that of the user  is invalid. In this situation I am getting the message on the ConfirmResaleEmail.aspx page that says: "Your message has been sent to the contact person, with a copy to you. " when I should be getting "Woops, it looks like your own email failed when we tried to send you your copy. " I am hoping some sharp-eyed person can spot the problem.  Here is the code:         ' this sends email from a user with email TxtBxEmail to the contact perons listed in TxtBxTo        msg = New MailMessage(TxtBxEmail.Text, TxtBxTo.Text, TxtBxSubject.Text, sb.ToString())    &n

I have a problem Global.asax

Master  Desing        <head runat="server"><title><asp:ContentPlaceHolder ID="TitleContent" runat="server" />    </title>    <link href="../../Content/Site.css" rel="stylesheet" type="text/css" />    <link href="../../Content/menu/chromestyle2.css" rel="stylesheet" type="text/css" />    <script src="../../Scripts/menu/chrome.js" type="text/javascript"></script></head>   Global.asax  //Routes Event Catagory  routes.MapRoute("eventCatagory", "Catagory/{catagoriesID}/{catagories}",                                 new { controller = "Catagory", action = "Catagory", catagories = "", catagoriesID = UrlParameter.Optional }); //Routes Event Catagory Detailroutes.MapRoute("eventCatagoryDetail", "Catagory/{subCatagoryID}/{subCatagoryname}",                        &n

Exception handling in EventHandlers, Sharepoint

What i am doing is when a user upload or edit any doc in a doc library then automatic mail should go to some users. I have written mail sending code in ItemAdded event . My problem is if any exception occurs in my Mail code i want to show that to the user so that he can manually send mails to the concerned users. I have tried using Properties.Cancel=true; but it is not working neither i am able to redirect the user to some custom error page.  I know if i use ItemAdding Event then these codes will work  but i do not want to cancel the document uploading process . Because if i am able to throw the exception then user can manually send the mail. Please suggest how can i show exception message to the user.
ASP.NetWindows Application  .NET Framework  C#  VB.Net  ADO.Net  
Sql Server  SharePoint  Silverlight  Others  All   

Hall of Fame    Twitter   Terms of Service    Privacy Policy    Contact Us    Archives   Tell A Friend