Using The Session Object In VB.Net
Feb 17, 2011What namespace do I need in order to use the Session Object in my VB.Net code-behind?
View 7 RepliesWhat namespace do I need in order to use the Session Object in my VB.Net code-behind?
View 7 RepliesIn the VS2005 environment, when I test my session to make sure the page redirects to the main page (itself) if the session is null, it works. There is no error.
The function I use for this is:
[code]....
However, when it is in the production environment in IIS 6.0, when the session has timed out, and I then do a postback by doing some slider control, I see the page reload but immediately thereafter, it throws a Server Error exception of : Object reference not set to an instance of object.
Looking at the stack trace, the event occured:
AJAXEnabledWebApplication1._Default.Slider1_TextChanged(Object sender, EventArgs e)
however, why is it that the Slider1_TextChanged event fired even even after during page_load, the page was told to do a response.direct ?? shouldn't the entire page have gone through a full-page refresh life cycle ? why did it continue on to attempt to raise the Slider1_TextChanged event?
I am getting object refernce error at line:if (Session["Tax"].ToString() == "9")
protected void Page_Load(object sender, EventArgs e)
{
if (Session["Tax"].ToString() == "9")
{
lblTax.Text = Session["Tax"].ToString();
}
else
{
lblTax.Text = "0";
}
}
Is anything wrong I have done?
I am confused about how to reference objects in session, how to update, and copy.
if I create
MyObject obj = new Object ();
then
Session["object"] = obj;
MyObject temp = (MyObject)Session["object"];
If i change something on temp, will the object in session be updated? do i need to follow changes with Session["object"] = temp?
I want to be able to persist data across a session but do this outside of the built-in session state object. Why is a long story that I will not go into here. I just need to know where I can put data other than in the session object that will persist across the specific session.
View 3 RepliesI have this problem when trying to read a session in another asp.net page.
Object reference not set to an instance of an object.
If Session("cne").Equals("") Then Response.Redirect("Default.aspx")End If
I'm setting the session in the Default page with this code :
Session("cne") = cne.Text
I am getting thid error 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 18:
Line 19: <%
Line 20: string thedate = Session["indate"].ToString();////;;;;????
Line 21: Response.Write("Starting SAS");
Line 22: try
Source File: c:Documents and SettingsAdministratorMy DocumentsVisual Studio 2008WebSitesWebSite1SASrun.aspx
upload.aspx
<%@ Page language="c#"Debug =true Codebehind="upload.aspx.cs" AutoEventWireup="false"
Inherits="Stardeveloper.UploadAccess.UploadForm" %>
<script runat="server">
void Button2_Click(object sender, EventArgs e)
{
Session["indate"] = Request["txtDate"];
Response.Redirect("SASrun.aspx");
}
</script>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<html>
<head>
</head>
<body>
<body style="background:#80B584">
<form runat=server>
<a href="default.aspx"><b>Main Page</b></a> · Upload Files
<div id="message" runat="server" />
<table align="left" border="0" cellspacing="0" cellpadding="3">
<p style="font-family:arial;color:White;font-size:20px;">Upload new files.</p>
<tr><td><b>MTMDetailed:</b></td><td><input type="file" class="stdInput" name="uploaded_file1"></td></tr>
<tr><td><b>File TRI_FP:</b></td><td><input type="file" class="stdInput" name="uploaded_file2"></td></tr>
<tr><td><b>indate :</b></td><td><input type="text"id="txtDate" name="inputdate"/></td></tr>
<tr><td align="right"><input type="submit" value="Submit"></td></tr>
<asp:Button id="Button2" runat="server" Text="Submit" onClick="Button2_Click" />
</table>
</form>
</body>
</html>
This is part of the code where error is coming from................
my main concern is using Session. I've always been under the impression that if you use the following statements (not that I would):
Session["newVar1"] = "a new session variable";
Session["newVar2"] = "a new session variable";
Session["newVar3"] = aLargeVariableThatHoldsLotsOfData;
You would be creating 3 new session cookies that hold the particular value. But I think my asp book is indicating that you would actually create 3 new variables in your session state object and ASP would only pass a unique Session ID (as a cookie?) in the response, and would get this ID upon the next request and associate that ID with your Session State Object (that IIS has stored in memory..?):
[code]....
That doesn't seem ideal for a website with lots of traffic. A server that is storing and maintaining thousands and thousands of instances of session state per website seems like way too much overload.
I'm trying to see what's going on on my own, but I'm having trouble.. I can't find my site's cookies anywhere on my machine (IE/windows xp). I've checked C:Documents and Settings icholasrCookies and C:Documents and Settings icholasrLocal SettingsTemporary Internet Files which, according to this yahoo answer, IE cookies are stored as well. I'm using ticket authentication in my app which stores a auth cookie on the client, so a cookie from my site has to be somewhere..
have been a great resource for me since i am new to MVC and trying to learn and figure out few things.My chain of thoughts still might be asp.net, so here is another question.I have a session object in my controller action which i use to populate my view , i need to clear the session object everytime i navigate out of the page (more like a session kill in page unload event). I really appreciate any ideas and inputs on how and where to clear the session object
View 8 RepliesI'm populating an object model with a linq query. The model looks like this:
MyModel{
DateTime AppointDate {get; set;}
int TotalAppoints {get; set;}
int AppointDuration {get; set;}
}
The linq-to-sql query looks like that:
public static GetAppointsFromDB(params){
var MyQuery = from....where...
select new MyModel{
AppointDate = ...,
TotalAppoints = ...,
AppointDuration =...};
return MyQuery as MyModel;}
In the master page, I'm looking to load the result of this query in the session like this:
if (Session["Appoints"] == null) {Session["Appoints"] = GetAppointsFromDB(...);}
When I run with the code, the session is always null. I added this line a second time, just right after, and the query runs again. When I'm looking to use the session at some other point in the code, it is null too there too. The query works because when I put a breakpoint on the return statement, I see the object properly filled.
I'm looking to build an ajax page; it's a reporting page. By default, load today's report. On the page there's a calendar control and when the user clicks on a date, reload the gridview with the corresponding data. Is it considered good practice to do the following:
1) on the first page load, query the data for the page
2) put the query result in the session object and display it in a gridview
3) if the user requests new data, get new data from the query with different parameters
4) put the result of the second query in the session object and display it
5) if the user then requests the data from the first query, get it from the session object
6) do the sorting and paging with the data held in the session.
Note: the data of each query will contain about 300-500 rows and about 15 columns. I'd like to do all this with ajax calls. What are some suggestions and pitfalls to avoid.
On my web page, I've a shared object with initiate (open session) on the load event.
I would like to close this object when the page is close and invoke a close session method.
how do I use the event to do this?
I am facing a very strange issue. I get an error Object Reference Not set to instance of object on the server while the code runs fine on my dev machine. The strange part is the line number where the code is throwing error (as appears in the Stack trace)
DemoUser demoUser = new DemoUser();
if (!Request.QueryString.AllKeys.Contains("name"))
{
playerName = usr.NinjaName;
demoUser.Email = usr.UserEmail;
demoUser.UserPicture = usr.UserPicture;
}
else
{
playerName = Request.QueryString["name"];
demoUser.Email = String.Empty;
demoUser.UserPicture = "http://graph.facebook.com/1/picture";
}
demoUser.EntryDateTime = DateTime.Now;
demoUser.Name = playerName;
Session["DemoUser"] = demoUser;
imgPlayer.ImageUrl = demoUser.UserPicture; // This is throwing error.
If that line is throwing error then the demoUser object is getting lost when I assign it to Session. Is that right?
First of all, here comes the load part.
Structure MainStruct
Dim Ans1 As String
Dim Ans2 As String
End Structure [code]....
The question is how can i read back the contents of the list, stored in the Session?
I mean something like...Build = Session("MyData")
I have made something like the following code:
protected void Page_Load(object sender, EventArgs e)
{
Label1.Text = Session["loginid"].ToString();
}
protected void delete_click(object sender, EventArgs e)
{
delete("mail1",Session["loginid"]);
}
private int delete(string mailid, string user)
{
System.IO.Directory.Delete(Server.MapPath(@"~files" + user + @"" + mailid), true);
}
When i press the delete button, everything works fine and the folder gets deleted. but after that when page postbacks again then a NullRefrenceException is raised at Label1.Text = Session["loginid"].ToString(); why is it happening...?? When I am not using this Directory.Delete() method everything is working fine and session variables are not set to null. When I traced my application I found that After Directory.Delete() method Session variables were intact and I was able to use those session variables in the processing after Directory.Delete(). But as soon as the page postbacks all session variables are set to null. And this problem doesn't appear when i m not using this delete() method. The folder I m deleting is in my project's folder. I m running this website using Visual Studio.
how to set a specific path (e.g. apppath or d:/myfolder) to all session objects across my ASP.NET 2.0 (state server configured) application so that all sessions will save/store in myfolder only.
View 4 Replies On my local machine I've got a website running which uses the login control to authenticate a user and write a formsauthentication ticket to the client (which is also on the same local machine). At the login process it stores a a small serializable userobject in a session object named Session["appuser"]. Now when I open FF and login to the website all is fine so far... But here's the thing I cannot for the life of me figure out...
When I open IE8 and login to the same website, the session object which was created in FF is completely overwritten with the one created in IE. I thought that every session is unique, but now I'm really starting to feel my knowledge of sessions is almost next to nothing... Is there anyone out there that could tell me why I'm seeing this.
how I can know if a session object was never instantiated?
View 1 Replieswhat is this error and how to solve
a different object with the same identifier value was already associated with the session:Â
I have created a website. I login with username and password and after authenticating i redirect the user to Home Page. When the user clicks Logout, they are redirected to the Login Page. But after this when i click the BACK button on the browser, it again goes back to the Home Page with that user's login credentials. I have used Session["username"]=null in the Page_Load function of Home Page. How to avoid going back to the Home Page when the BACK button is clicked by the User??
View 3 RepliesI have a profile object in session with profile information for the currently logged in user. I wand to be able to inject it into my business classes so I can do validation etc in them without having to pass it in the parameter list in every method.
I have tried something like this in my ninject module:
Profile profile = HttpContext.Current.Session["Profile"] as Profile;
Bind<Profile>().ToConstant(profile).InTransientScope();
However it blows up with null reference when I do Kernel.Get() in my aspx. The BusinessObject takes a profile via the constructor. If I hard code the profile instead of using the HttpContext then everything seems to work. Not sure if ToConstant is the way to go, I am really looking for something that will get evaluated every time a new BusinessObject is created.
UPDATE
It seems that asking for injection to happen on a page level object inline is too soon for the session collection to be available. If I move in the Kernel.Get call to Page_Load it works just fine.
I have a object of Class named "Employee" I need to store the object in the session. what happens if i do not serialize the object and store in the session.
View 7 RepliesI have a Authorizeclient.aspx.cs page where I set my session value.Authorizeclient.aspx is a blank page. HttpContext.Current.Session["nodeID"]="0". This session value changes from 0 or non zero which depends on the value returned by Database. If no value is returned I assign HttpContext.Current.Session["nodeID"]="0" as the default state else I assign HttpContext.Current.Session["nodeID"]=resolve(nodeID).ToString()
Till this part it works fine as expected. However, I have a requirement that I need to read the nodeID from Session in other application on the same server. I mean this application too is part of the root project where I initially created the Session and set it. The strange thing is the Session["nodeID"] in application gets null "SOMETIMES" Not always. I am trying to read the Session in Page_Load. Sometimes it works fine and sometimes it gets null. Moreover the session object do not die and I can see other keys like Session["Themes"] etc there. The session is in InProc mode and have 20 minutes timeout time.
I am implementing a custom membership and role providers where I need to store all the role/membership information in the user's session.
I am implementing these custom providers inside a class library project (different from the website project) and need to access the session in them. The idea is to store the role/membership related information in the session after retrieving them for the first time from the database.
When I try to access the Session using System.Web.HttpContext.Current.Session
I get this as a null object (Object reference not set to an instance of an object.
Why is the session turning out to be null?
I am getting the following error in an Asp.Net Castle ActiveRecord app when trying to update an object:
"a different object with the same identifier value was already associated with the session"
I've looked up and down my code to see where else the object might have been created but I'm not seeing it. This is baffling as I have the exact same code on another page that works fine on updates
Now I'm thinking of trying to see where this other object is in the Session and either kill it or find out how it got into the session. How can I find this object?
[Update]
Ok, I finally found where the object is being called. However, I would still like to know how to find objects in the session for future reference.