5

In my global.asax page I have the following code:

Sub Application_Error(ByVal sender As Object, ByVal e As EventArgs)
     server.transfer("err.aspx")
End Sub

It does not work and I get the folowing error: Object reference not set to an instance of an object.

Thanks in advance

user2726716
  • 51
  • 1
  • 2

1 Answers1

11

I would recommend using the built-in error handling in .NET for this, just use Web.config:

<configuration>
  <system.web>
    <customErrors mode="On" defaultRedirect="err.aspx" redirectMode="responseRewrite">
    </customErrors>
  </system.web>
</configuration>

The responseRewrite will make it act as a Server.Transfer. If you want a redirect instead, use redirectMode="responseRedirect".

More info here:

However, if you really want to handle it in Global.asax, you should use the sender object:

Sub Application_Error(ByVal sender As Object, ByVal e As EventArgs)
     Dim app As HttpApplication = CType(sender, HttpApplication)
     app.Server.Transfer("err.aspx")
End Sub
Erik A. Brandstadmoen
  • 10,430
  • 2
  • 37
  • 55
  • Hi,Thanks for the answer. I tried Dim server As HttpApplication = CType(sender, HttpApplication) server.Transfer("err.aspx") as you mentioned but i get error: transfer is not a member of httpaplication – user2726716 Aug 29 '13 at 05:15