Link to home
Start Free TrialLog in
Avatar of bjohns33
bjohns33

asked on

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

Hi all

this is driving me slightly mad. I'm integrating two different apps, with their own authentication methods (seemed like a good idea at the time!).  It builds fine.

Making this call (userInt is set to a valid integer in both cases) in global.asax:

InstantASP.InstantForum.Logic.UserExists(userInt);

in Session_Start is working ok, but in Application_AuthenticateRequest it gives me the following error:

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

Stack Trace:
NullReferenceException: Object reference not set to an instance of an object.]
   InstantASP.InstantForum.Logic.ReturnSessionID() +15
   InstantASP.InstantForum.Logic.UserExists(Int32 UserID) +202
   CEL.Global.Application_AuthenticateRequest(Object sender, EventArgs e) in c:\inetpub\wwwroot\cel\global.asax.cs:129
   System.Web.SyncEventExecutionStep.System.Web.HttpApplication+IExecutionStep.Execute()
   System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)


Any pointers as to how to track down?  The object I'm calling is a compiled dll, so getting in to what it's doing is going to be tricky.  I'm wondering if there's a different context for these two parts of global.asax, but to be honest am a bit lost.

Thanks in advance
Ben
ASKER CERTIFIED SOLUTION
Avatar of codewiz51
codewiz51

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of bjohns33
bjohns33

ASKER

Thanks for the response - despite your 'wild conjecture', I'm sure you're right!

So, is a solution to move all of my authentication code in to Application_OnPostRequestHandlerExecute instead, as this does have access to the session?

What will this break?

Cheers
Ben
Hi CodeWiz

Have moved it all to the Application_OnPostRequestHandlerExecute, and miracle of miracles, it works.

Thanks for pointing me in the right direction.

Cheers
Ben
Sorry, I was cutting the grass and didn't see your responses.  Amazing, I have a life occasionally!  I'm glad moving the code worked, because I didn't have a clue as to whether anything would break if you moved it to Application_OnPostRequestHandlerExecute.  ;-)