Access to the Request object in System.Web.UI.Page derivative...

T

Terry Mulvany

namespace CIBWeb
{
public class BasePage : System.Web.UI.Page
{
public BasePage()
{
}

protected override void OnInit(EventArgs e)
{
THIS NEXT LINE THROWS EXCEPTION ALSO, CANNOT USE
HttpContext.Current.Request.QueryString["sc"] != string .Empty
if (
HttpContext.Current.Request.Cookies["source_code"].Value.ToString() !=
string.Empty )
{
...
}
...
}
}
}

YIELDS THIS ERROR ...


Server Error in '/CIBWeb' Application.
----------------------------------------------------------------------------
----

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 64: // no other source code overrides it. ex: user clicks url in
email (email campaign) and then once on the site clicks on a ad banner
(which has
Line 65: // it's own source code), the first source code should still be
the one used
Line 66: if (
HttpContext.Current.Request.Cookies["source_code"].Value.ToString() !=
string.Empty )
Line 67: {
Line 68: SourceCode =
HttpContext.Current.Request.Cookies["source_code"].Value.ToString();


Source File: c:\inetpub\wwwroot\cibweb\src\basepage.cs Line: 66

Stack Trace:


[NullReferenceException: Object reference not set to an instance of an
object.]
CIBWeb.BasePage.OnInit(EventArgs e) in
c:\inetpub\wwwroot\cibweb\src\basepage.cs:66
CIBWeb.HealthWellness._Default.OnInit(EventArgs e) in
c:\inetpub\wwwroot\CIBWeb\HealthWellness\Default.aspx.cs:74
System.Web.UI.Control.InitRecursive(Control namingContainer)
System.Web.UI.Page.ProcessRequestMain()

ANY IDEAS?
 
B

Brian K. Williams

I believe your problem exists when you have no cookie / querystring present.
You can also perform other checks like HasKeys or Count.
Try retrieving your values with a helper method:

public string getCookie(string strCookie)
{
string cookieValue="";
try
{
cookieValue= Request.Cookies[strCookie].Value;
}
catch(Exception)
{
cookieValue="No Value";
}
return cookieValue;
}

Response.Write(getCookie("source_code"));

-Brian K. Williams
 
T

Terry Mulvany

Thanks. I had an epiphany and fixeed this about half an hour ago.
I am just testing for null first.

Brian K. Williams said:
I believe your problem exists when you have no cookie / querystring present.
You can also perform other checks like HasKeys or Count.
Try retrieving your values with a helper method:

public string getCookie(string strCookie)
{
string cookieValue="";
try
{
cookieValue= Request.Cookies[strCookie].Value;
}
catch(Exception)
{
cookieValue="No Value";
}
return cookieValue;
}

Response.Write(getCookie("source_code"));

-Brian K. Williams

Terry Mulvany said:
namespace CIBWeb
{
public class BasePage : System.Web.UI.Page
{
public BasePage()
{
}

protected override void OnInit(EventArgs e)
{
THIS NEXT LINE THROWS EXCEPTION ALSO, CANNOT USE
HttpContext.Current.Request.QueryString["sc"] != string .Empty
if (
HttpContext.Current.Request.Cookies["source_code"].Value.ToString() !=
string.Empty )
{
...
}
...
}
}
}

YIELDS THIS ERROR ...


Server Error in '/CIBWeb' Application.
--------------------------------------------------------------------------
--
----

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 64: // no other source code overrides it. ex: user clicks url in
email (email campaign) and then once on the site clicks on a ad banner
(which has
Line 65: // it's own source code), the first source code should still be
the one used
Line 66: if (
HttpContext.Current.Request.Cookies["source_code"].Value.ToString() !=
string.Empty )
Line 67: {
Line 68: SourceCode =
HttpContext.Current.Request.Cookies["source_code"].Value.ToString();


Source File: c:\inetpub\wwwroot\cibweb\src\basepage.cs Line: 66

Stack Trace:


[NullReferenceException: Object reference not set to an instance of an
object.]
CIBWeb.BasePage.OnInit(EventArgs e) in
c:\inetpub\wwwroot\cibweb\src\basepage.cs:66
CIBWeb.HealthWellness._Default.OnInit(EventArgs e) in
c:\inetpub\wwwroot\CIBWeb\HealthWellness\Default.aspx.cs:74
System.Web.UI.Control.InitRecursive(Control namingContainer)
System.Web.UI.Page.ProcessRequestMain()

ANY IDEAS?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,769
Messages
2,569,580
Members
45,055
Latest member
SlimSparkKetoACVReview

Latest Threads

Top