Solved

Object reference not set to an instance of an object. !ISPOSTBACK

Posted on 2009-07-16
3
385 Views
Last Modified: 2013-12-17
Hello,

I am getting the Object Reference message but I am confused because I did create an instance of the base class in the calling program " CheckProgramAccess CPA = new CheckProgramAccess()"

The error is being thrown within the .DLL at this statement:
"string TrackId = HttpContext.Current.Request.QueryString["track"].Substring(0,8) ;"

The Part 2 of the code is in a .dll which I am not allowed to change.  So my question is - two fold:
1). Why is this error happening since I did create an instance as demonstrated by CPA....and
2). How do I resolve this within my Part 1 code sniplet?

Thank you!
Part#1:

 protected void Page_Load(object sender, EventArgs e)
 

        {

        if (!IsPostBack)

            {

            CheckProgramAccess CPA = new CheckProgramAccess();
 

            if (!CPA.Authorized())

                {

                Response.Redirect("/asp/home.asp");

                }

            else

                {
 

                }

            }

=========

Part# 2:
 

public class CheckProgramAccess

	{

		public CheckProgramAccess()

		{

			//

			// TODO: Add constructor logic here

			//

		}
 

		public bool Authorized()

		{

			bool Authenticated = true;

			bool RtnCde = false ;

			string UpId = "" ;

			string TimeOut = "" ;

			string LogTime = "" ;
 

			try

			{

				string TrackId = HttpContext.Current.Request.QueryString["track"].Substring(0,8) ;

				string Program =  HttpContext.Current.Request.QueryString["program"].ToString() ;

	}

			catch(Exception ex)

			{

				string msg = ex.Message.ToString();

				Authenticated = false ;

			}

			return Authenticated;

		}

Open in new window

0
Comment
Question by:Muaadeeb
3 Comments
 
LVL 12

Accepted Solution

by:
GuitarRich earned 175 total points
Comment Utility
The error is probably occuring because the Request.QueryString doesn't contain a "track" entry.
You should check for this before assigning it to a variable in the dll.
If you can't change the DLL - then check for it before the call to the DLL e.g

 protected void Page_Load(object sender, EventArgs e)

 

        {

        if (!IsPostBack)

            {

            if (Request.QueryString["track"] != null)

            {

                CheckProgramAccess CPA = new CheckProgramAccess();

 

                if (!CPA.Authorized())

                {

                    Response.Redirect("/asp/home.asp");

                }

                else

                {

 

                }

            }

        }

Open in new window

0
 
LVL 41

Assisted Solution

by:guru_sami
guru_sami earned 75 total points
Comment Utility
looks you Request.QueryString["track"] is null...
When you are accessing you page ...are you passing queryString parameter track and program in the url....
What is the url of the Page?
0
 

Author Comment

by:Muaadeeb
Comment Utility
Thanks guys you were right.   The query string was null and as a result the .DLL code had no idea what it was supposed to be referencing.


Thank you!

0

Featured Post

Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

Join & Write a Comment

We all know that functional code is the leg that any good program stands on when it comes right down to it, however, if your program lacks a good user interface your product may not have the appeal needed to keep your customers happy. This issue can…
Many of us here at EE write code. Many of us write exceptional code; just as many of us write exception-prone code. As we all should know, exceptions are a mechanism for handling errors which are typically out of our control. From database errors, t…
Here's a very brief overview of the methods PRTG Network Monitor (https://www.paessler.com/prtg) offers for monitoring bandwidth, to help you decide which methods you´d like to investigate in more detail.  The methods are covered in more detail in o…
This video gives you a great overview about bandwidth monitoring with SNMP and WMI with our network monitoring solution PRTG Network Monitor (https://www.paessler.com/prtg). If you're looking for how to monitor bandwidth using netflow or packet s…

771 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now