473,224 Members | 1,347 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,224 software developers and data experts.

Session state can only be used when enableSessionState is set to true

What is wrong with this picture?

I'm trying to set my shopping cart text on my home page using the
following function that is executed when the class is constructed:

protected string fnGetShoppingCartText()
{
if (Session["Cart"] != null)
{
ArrayList cart = (ArrayList)Session["Cart"];

int intItemCount = cart.Count;

if (intItemCount == 0)
{
return "Shopping Cart (Empty)";
}
else if (intItemCount == 1)
{
return "Shopping Cart (1 item)";
}
else
{
return "Shopping Cart (" + intItemCount + " items)";
}
}
else
{
return "Shopping Cart (Empty)";
}
}

-----
It fails on the line: ArrayList cart = (ArrayList)Session["Cart"];

I have EnableSessionState="true" set in the Page Directive.

I am using MS Visual Web Developer 2005 Express Edition. I am able to
reference this variable in other pages.

Your help is greatly appreciated.

Thank you,
Kevin G.

May 12 '06 #1
6 15992
it should only fail on that line if the session object is of some other type
where the cast cannot work. Use a safe cast instead and then test for null.
ArrayList arr = Session["cart"] as ArrayList;
if(arr != null) etc

What exactly is the error message when the failure occurs?

--

________________________
Warm regards,
Alvin Bruney [MVP ASP.NET]

[Shameless Author plug]
Professional VSTO.NET - Wrox/Wiley
The O.W.C. Black Book with .NET
www.lulu.com/owc, Amazon
Blog: http://www.msmvps.com/blogs/alvin
-------------------------------------------------------

<Ke***********@gmail.com> wrote in message
news:11**********************@j73g2000cwa.googlegr oups.com...
What is wrong with this picture?

I'm trying to set my shopping cart text on my home page using the
following function that is executed when the class is constructed:

protected string fnGetShoppingCartText()
{
if (Session["Cart"] != null)
{
ArrayList cart = (ArrayList)Session["Cart"];

int intItemCount = cart.Count;

if (intItemCount == 0)
{
return "Shopping Cart (Empty)";
}
else if (intItemCount == 1)
{
return "Shopping Cart (1 item)";
}
else
{
return "Shopping Cart (" + intItemCount + " items)";
}
}
else
{
return "Shopping Cart (Empty)";
}
}

-----
It fails on the line: ArrayList cart = (ArrayList)Session["Cart"];

I have EnableSessionState="true" set in the Page Directive.

I am using MS Visual Web Developer 2005 Express Edition. I am able to
reference this variable in other pages.

Your help is greatly appreciated.

Thank you,
Kevin G.

May 12 '06 #2
Thanks for your reply. Unfortunately, your suggestion did not work.
Here's the exact error message (using my original code):

Session state can only be used when enableSessionState is set to true,
either in a configuration file or in the Page directive. Please also
make sure that System.Web.SessionStateModule or a custom session state
module is included in the <configuration>\<system.web>\<httpModules>
section in the application configuration.
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.Web.HttpException: Session state can only be
used when enableSessionState is set to true, either in a configuration
file or in the Page directive. Please also make sure that
System.Web.SessionStateModule or a custom session state module is
included in the <configuration>\<system.web>\<httpModules> section in
the application configuration.

Source Error:
Line 89: {
Line 90:
Line 91: ArrayList cart = (ArrayList)Session["Cart"];
Line 92:
Line 93: if (cart != null)

May 12 '06 #3
You need to :

1. include a <pages... > attribute in web.config :

<pages enableSessionState = "true" />

*or*

2. enable SessionState in the <%@ Page ...%> directive in your page :

<%@ Page enableSessionState = "true" %>

Also, the System.Web.SessionStateModule should exist in your
<httpModules> section in the application configuration.

Unless you've erased it, it should be there.


Juan T. Llibre, asp.net MVP
aspnetfaq.com : http://www.aspnetfaq.com/
asp.net faq : http://asp.net.do/faq/
foros de asp.net, en español : http://asp.net.do/foros/
===================================
<Ke***********@gmail.com> wrote in message
news:11*********************@u72g2000cwu.googlegro ups.com...
Thanks for your reply. Unfortunately, your suggestion did not work.
Here's the exact error message (using my original code):

Session state can only be used when enableSessionState is set to true,
either in a configuration file or in the Page directive. Please also
make sure that System.Web.SessionStateModule or a custom session state
module is included in the <configuration>\<system.web>\<httpModules>
section in the application configuration.
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.Web.HttpException: Session state can only be
used when enableSessionState is set to true, either in a configuration
file or in the Page directive. Please also make sure that
System.Web.SessionStateModule or a custom session state module is
included in the <configuration>\<system.web>\<httpModules> section in
the application configuration.

Source Error:
Line 89: {
Line 90:
Line 91: ArrayList cart = (ArrayList)Session["Cart"];
Line 92:
Line 93: if (cart != null)

May 12 '06 #4
Still no go. I already had the enableSessionState directive at the top
of my aspx file, but I did not have the httpModules section in
web.config file. However, after adding this and rebuilding my project,
it still didn't work.

I am able to reference this same session variable on another aspx.cs
page (which also has the enableSessionState directive at the top of its
aspx file), so I'm not sure what the deal is. If you can think of
anything else for me to try, please let me know.

Thank you,
Kevin G.

May 16 '06 #5
I figured out the problem. I was trying to reference a session
variable that hadn't been initialized yet. I was trying to reference
the session variable in one of my page's class constructor before the
Session_Start function had been executed in the global.asax file.

Thanks for looking into this.

Kevin G.

May 17 '06 #6

Ke***********@gmail.com schrieb:
I figured out the problem. I was trying to reference a session
variable that hadn't been initialized yet. I was trying to reference
the session variable in one of my page's class constructor before the
Session_Start function had been executed in the global.asax file.

Thanks for looking into this.

Kevin G.


I just found out that the same error also occurs when using
Server.Transfer to redirect the handling of the request to another
page.

It seems to me that this is a severe error because there is no reason
why this should not work. Can someone please report that to Microsoft?
:)

May 25 '06 #7

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
by: Didier Jeanson | last post by:
Hi, The session does not work in ASP.NET under Windows 2003 and IIS6. The page is very simple. - When I try to access the Session object in .NET I receive the following error: Session...
3
by: David Lozzi | last post by:
Error: Session state can only be used when enableSessionState is set to true, either in a configuration file or in the Page directive at line 6 Line 4: <script RUNAT="SERVER"> Line 5: ...
1
by: Axel Dahmen | last post by:
Hi, I've added a property to my Page base class (this base class inherits from Page and all my aspx.cs classes inherit from my base class). This property of mine uses the Session object to...
0
by: Rick | last post by:
I am getting a "Session state can only be used when enableSessionState is set to true" error. it works on the first form where I am writing some data to a dictionary(Dictionarybase). After the...
2
by: ras26 | last post by:
I have a WebSite "App1" which has an external assembly "Lib1". Inside this external assembly we have developed some classes that derive from "System.Web.UI.Page". One of these pages is called...
3
by: Paul | last post by:
Hi All, In my application, I wished to check certain things on each page load, so rather than paste the same code in each pages constructor, I thought it would be more logical to inherit from...
2
by: fniles | last post by:
I am using Visual Studio 2005. In my ASPX page, when I try to use Session, I got the error "Session state can only be used when enableSessionState is set to true, either in a configuration file or...
10
by: =?Utf-8?B?V2FubmFiZQ==?= | last post by:
I've been on this for a while, and cannot figure it out. Can someone please help with this message? SessionState can only be used when EnableSessionState is set to true, either in a...
4
by: Cirene | last post by:
In my web.config I added <pages enableSessionState="true">. In each of my pages I also added EnableSessionState="True" to the Page declaration. (I didn't think this was necessary, but...) ...
0
by: veera ravala | last post by:
ServiceNow is a powerful cloud-based platform that offers a wide range of services to help organizations manage their workflows, operations, and IT services more efficiently. At its core, ServiceNow...
0
by: jianzs | last post by:
Introduction Cloud-native applications are conventionally identified as those designed and nurtured on cloud infrastructure. Such applications, rooted in cloud technologies, skillfully benefit from...
0
by: mar23 | last post by:
Here's the situation. I have a form called frmDiceInventory with subform called subfrmDice. The subform's control source is linked to a query called qryDiceInventory. I've been trying to pick up the...
0
by: abbasky | last post by:
### Vandf component communication method one: data sharing ​ Vandf components can achieve data exchange through data sharing, state sharing, events, and other methods. Vandf's data exchange method...
2
by: jimatqsi | last post by:
The boss wants the word "CONFIDENTIAL" overlaying certain reports. He wants it large, slanted across the page, on every page, very light gray, outlined letters, not block letters. I thought Word Art...
0
by: fareedcanada | last post by:
Hello I am trying to split number on their count. suppose i have 121314151617 (12cnt) then number should be split like 12,13,14,15,16,17 and if 11314151617 (11cnt) then should be split like...
0
by: stefan129 | last post by:
Hey forum members, I'm exploring options for SSL certificates for multiple domains. Has anyone had experience with multi-domain SSL certificates? Any recommendations on reliable providers or specific...
1
by: davi5007 | last post by:
Hi, Basically, I am trying to automate a field named TraceabilityNo into a web page from an access form. I've got the serial held in the variable strSearchString. How can I get this into the...
0
by: MeoLessi9 | last post by:
I have VirtualBox installed on Windows 11 and now I would like to install Kali on a virtual machine. However, on the official website, I see two options: "Installer images" and "Virtual machines"....

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.