Solved

Why is this cookie  value always null?

Posted on 2008-06-18
6
1,353 Views
Last Modified: 2010-04-21
I've tried it a couple of ways and it always comes up as null on Page_Load().  The value is what I expect it to be right after I set it.


protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
 
            HttpCookie cookie = new HttpCookie("Preferences");
 
            if (cookie != null)
                ddl_report.SelectedValue = cookie["LastReportRun"];
            
            //The previous line is executed, but cookie["LastReportRun"] is always null.
 
            SetCriteriaVisibility();
        }
    }
 
 
    protected void btn_run_report_Click(object sender, EventArgs e)
    {
        HttpCookie cookie = new HttpCookie("Preferences");
        cookie.Values.Add("LastReportRun", ddl_report.SelectedValue);
        cookie.Expires = DateTime.Now.AddMonths(2);
        Response.Cookies.Add(cookie);
 
        string s = cookie["LastReportRun"];
    }

Open in new window

0
Comment
Question by:dtburdick
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
6 Comments
 
LVL 16

Expert Comment

by:burakiewicz
ID: 21812929
the value wont be available until the page does a postback
0
 

Author Comment

by:dtburdick
ID: 21813166
So when do I set it?  The following didn't work even though it hits the line of code where it sets the cookie.  It is still null the next time I start the application.


    protected void Page_Load(object sender, EventArgs e)
    {
        if (ddl_report.SelectedIndex >0)
        {
            HttpCookie cookie = new HttpCookie("Preferences");
            cookie.Values.Add("LastReportRun", ddl_report.SelectedValue);
            cookie.Expires = DateTime.Now.AddMonths(2);
            Response.Cookies.Add(cookie);
 
            string s = cookie["LastReportRun"];
        }
 
        if (!Page.IsPostBack)
        {
 
            HttpCookie cookie = new HttpCookie("Preferences");
 
            if (cookie != null)
                ddl_report.SelectedValue = cookie["LastReportRun"];
            
            SetCriteriaVisibility();
 
        }
    }

Open in new window

0
 
LVL 16

Expert Comment

by:burakiewicz
ID: 21813280
you are never getting the cookie you need something like this
HttpCookie cookie1=  Response.Cookies.Get("preferences");
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:dtburdick
ID: 21814120
That isn't working either.  I hate it when simple stuff slows me down.
0
 
LVL 33

Accepted Solution

by:
raterus earned 125 total points
ID: 21814188
You need to get the cookie from the Request, not the Response.

        if (!Page.IsPostBack)
        {
 
            HttpCookie cookie = Request.Cookies["Preferences"];
 
            if (cookie != null)
                ddl_report.SelectedValue = cookie["LastReportRun"];
           
            //The previous line is executed, but cookie["LastReportRun"] is always null.
 
            SetCriteriaVisibility();
        }
0
 

Author Closing Comment

by:dtburdick
ID: 31468337
Thank you so much.  I'd have been here for eternity looking at that.
0

Featured Post

Enroll in May's Course of the Month

May’s Course of the Month is now available! Experts Exchange’s Premium Members and Team Accounts have access to a complimentary course each month as part of their membership—an extra way to increase training and boost professional development.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

International Data Corporation (IDC) prognosticates that before the current the year gets over disbursing on IT framework products to be sent in cloud environs will be $37.1B.
Real-time is more about the business, not the technology. In day-to-day life, to make real-time decisions like buying or investing, business needs the latest information(e.g. Gold Rate/Stock Rate). Unlike traditional days, you need not wait for a fe…
Finding and deleting duplicate (picture) files can be a time consuming task. My wife and I, our three kids and their families all share one dilemma: Managing our pictures. Between desktops, laptops, phones, tablets, and cameras; over the last decade…

759 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