C# - Can Access Viewstate And Session Objects At Unload Event Of Page
Jan 8, 2010can we access viewstate and session objects at unload event of page.
View 2 Repliescan we access viewstate and session objects at unload event of page.
View 2 RepliesIn my project i have used master page.In one particular page , i want a function to be executed on page unload(javascript event) event of that particular page.To achieve this i have written
$('body').bind('unload',function()
{
alert('hello');
} );
But this is not working.This function is not getting called when i move to other page.
I've got an website that needs to know when someone has closed a details page. Is there a way to fire a post back using Javascript to call a particular Sub or Function on the Unload event?
View 2 RepliesLets say I am doing a shoping cart. I authenticate the user with a session variable.For example:
If(Request.IsAuthenticated)
// Here I want to add to the shoping cart.
// Can I do the following
Session["Cart"] = "Washing Machine";
Now will this Session["Cart"] value which is washing machine here be unique to diff customers?
I have a web application which hangs after clicking a checkbox which is set to autopostback. This checkbox is supposed to do some process.
When I did the breakpoint, the application does not go to the On_PageLoad event but goes directly to the On_Unload event. After that, it hangs. It does not go to the On check changed of the checkbox.
Here are the events that are only called after the checkbox has been ticked.
OnInitOnUnload
I've used PreviousPage Property to access the controls of the previous page but how can I access objects and instances of classes I initiated in the previous page!
View 2 RepliesI stored a object in viewstate on Page. Now when i access the same viewsate object on usercontrol,it shows as null. I even tried creating the same viewstate with same name in usercontrol and page.Both holds different value. I understand that viewstate is a protected property. How does this thing implement in above scenerio or is there any other reason for this behaviour.
Edit:
Usercontrol is there in the page markup. I am not loading it dynamically. I have a page EditFacilityworkType.aspx. On page I have a usercontrol FacilityWorkTypeDetails.aspx(FacilityWorkTypeDetails1). Inside this usercontrol i have a user control Workflow.aspx(Workflow1)
Page_Load() of Page I am retrieving workflowdetails on page_load() of page.
FacilityWorktype facilityWorkType = facilityDetails.GetFacilityWorktypeDetail(SessionHelper.FacilityWorkTypeID);
ViewState["WorkFlow"] = facilityWorkType.FacilityWorkTypeWorkFlow
Inside usercontrol FacilityWorkTypeDetails.aspx. I have a property
public FacilityWorktype FacilityWorkTypeDetails
{
get
{
#region Fill FacilityWorktype
return GetEntityFromControl();
#endregion
}
set
{
PopulateControls(value);
}
}
Now i set this property in page load of page
FacilityWorkTypeDetails1.FacilityWorkTypeDetails = facilityWorkType;
Inside Workflow.aspx, I have a property
/// <summary>
/// Property to fill entity object from controls on this page
/// </summary>
public WorkFlow WorkFlowDetails
{
get
{
return GetEntityFromControls();
}
set
{
BindTranscriptionMethodDDL(ddlTranscMethod);
PopulateControls(value);
}
}
Now PopulateControls() of FacilityWorkTypeDetails1, i am setting property of workflow1
private void PopulateControls(FacilityWorktype value)
{
Workflow1.WorkFlowDetails = value.FacilityWorkTypeWorkFlow;
}
Now when i am retrieving values from
private WorkFlow GetEntityFromControls()
{
WorkFlow workFlow = (ViewState["WorkFlow"] as WorkFlow) ?? new WorkFlow();
//workFlow is null
}
So now inside this function workFlow is null. I want to ask,why is it null when i have set viewstate in page.
I haveMaster Page -> ASPX page -> User ControlUser control page is contains all dynamic bind controls (e.g Repeater) depended on ASPX Page (Only one parameter say ItemNo)The problem is, if I bound user control on page load event with passing respective parameters then it's create to much view state (I checked source file and it's almost 1.5 MB)In other way if I put one textbox, and a command button and I pass required parameter on button click and load the control then page size is ok (I checked and it's < 500KB)
View 2 RepliesI want to design a nested gridview with insert, update, delete functionality through custom business objects dynamically inside viewstate.
(Master Gridview)
EmployeeID EmployeeName
1 Ted
(Child Gridview)
ItemID ItemName
1 Keyboard
2 Mouse
2 John
(Child Gridview)
ItemID ItemName
1 PSU
2 GPU
3 Printer
I have done this in the past with datatable/dataviews but they are a real memory hog.
How do I implement Master/Detail functionality with business objects ? What is the alternate to Dataview in master detail/business objects.
I know its a rather broad question but its worth getting started on something =)
I have an ASCX control which is a special dropdownlist. I add that control dynamically to the page and fill it with data. This control has a postback that will change the contents of a second dynamically created standard dropdownlist.
When I change the selection on the first dropdown, the indexchanged fires and I get new data and attempt to place it in the second dropdownlist's items collection, by first clearing it then filling it with new data.
This works fine the first time a change the selection, but when I select a second time the following error is thrown:
The control tree into which viewstate is being loaded must match the control tree that was used to save viewstate during the previous request.
I'm not adding or removing new controls in the fired event, only changing data. And again, it works the first time, but doesn't subsequent times.
If I disable stateview on the child control, then the control just doesn't get updated with data at all.
Is there a way to access viewstate of a page in another page ?Please elaborate the answer to clear my doubts as I think ViewState has it's scope to the page only and can't be accessed outside page.
View 1 RepliesWhen my asp.net aspx page unloads i am trying to check if the current session is expired. I have this code in the Page_unlaod and i get a "Response is not available in this context" error. What is the problem placing this code in the Page_unlaod?
[Code]....
the page is in a frame with 3 other pages so when the page is doing a postback, there is client side code that will the page 2 in the frameset to 100% visible, then when page is laoded and the document is ready it sets itself 100% visible in the frame. I have tried placing the code in page_load but when the session has timedout the pageload is never executed again. I have tried to place the code in the pageload of page 2 in the frameset but that causes some funny behavior and unwanted redirects.
I have ajax modal popup for Questionnaire for my website and i want to show it on when user leaving the website.
it is working well with page load event. but i want to call it at the time when user want to close website page.
i have tried with page_unload and dispose event but the page was closed directlly without displaying the popup.
Code:
<script runat="server">
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
mdl1.Show()
'chkbox1.Attributes.Add("onclick", "checkBoxListOnClick(this);")
End Sub
[Code]....
dispaly above modal popup on leaving of the website?
On my parent page I added a script which ask confirmation befor page unload (On every button press) using window.onbeforeunload, The problem i use to open a subPage on this parent page, and on closing of the subpage i use to reload the parent page, but it ask confirmation and I dnt want that....
View 3 RepliesI have been getting this error a lot lately with some of my users, and I had a couple of concerns with view state and I have read so many articles but I am still lost..
1. I use masterpage on all the pages and I need viewstate for some of the pages but..
There is a page where a user will fill out the information and then submit this data to a cgi server, and it is where I get most of the Client Disconnected errors, what would happen if I disable viewstate when they click on that button?
Now when a user browses from one page to another, does the view state from the previous page get deleted? If not how would I delete it?
Does the master page have its own viewstate? Would I be able to make sure none of items on my master page are using the viewstate?
I have a shopping cart page (Cart.aspx) that has a button that will (sometimes) post to a third party payment gateway, if payment is necessary. The payment gateway will process the payment and then do a silent post to my website (Order.aspx) so I can update the order status.
Order.aspx always throws an invalid viewstate error, even though viewstate is disabled on the page.
What's happening is that Cart.aspx (which has viewstate enabled) posts to the payment gateway, and the gateway will post it back as part of the silent post. Even though Order.aspx has viewstate disabled and validation disabled, it still tries to validate the __viewstate field it's being given.
I know setting EnableViewState=false will disable the rendering of the __viewstate field, but if another page provides the field, shouldn't it still skip validation? I tried calling ViewState.Clear() on the Page_Init event of Order.aspx, but ViewState is apparently empty. how to get around this? I don't want to disable ViewState on Cart.aspx (in some cases it may be necessary), but I can't figure out how to clear it on Order.aspx.
i want to give id of dropdowncontrol inside master page, how can i assign this control id in trigger of updatepanel inside content page
View 1 Repliesi want to use multiple session variables for single session i know how to use for multiple session variables i dont know
View 9 RepliesI have inherited a very large ASP.NET app that needs to be modified to use a State Server instead of in-proc sessions. I need to track down all classes used in session throughout the app and then determine if they can be serialized. Are there any tools that can be used to analyze the code to determine the classes used in session?
View 2 RepliesI set a session object at one juncture in my code:
Session("my_name") = "Dave"
Later in my code I give the user a chance to update this object:
Session("my_name") = TextBox1.Text
I reload my page and display a little hello statement like this:
Label1.Text = "Hello" & CStr(Session("my_name"))
The result is: "Hello Dave" no matter what I change Session("my_name") too.
EDIT: Here is the a full code-behind I wrote up to demonstrated:
Public Class WebForm1
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Response.Cache.SetCacheability(HttpCacheability.NoCache)
Response.ExpiresAbsolute = DateTime.Now.AddMonths(-1)
If Page.IsPostBack = False Then
Session("my_name") = "Dave"
End If
Label1.Text = CStr(Session("my_name"))
End Sub
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click
Session("my_name") = TextBox1.Text
End Sub
Have a project where I need to access a RSS feed. The issue is this RSS feed, you need to be logged in as a user. They have a simple web form (login + password).
1) Post a web form with my login and password
2) Maintaining Session (w/successful login), do an additiional GET to retrieve the RSS feed.
I am doing this in an ASP.Net page so it all happens server side in VB.Net
how can I access a simple session state variable from any page?i would think to use: session("variableName")but that just doesnt work....
View 3 RepliesI am creating some sessions on successful login and I need to access them from my master page. How do I go about this?
public void showUser()
{
if (!string.IsNullOrEmpty(Session["User"].ToString()))
{
Response.Write(Session["User"].ToString());
}
else
{
Response.Write("Not Logged In");
}
}
In the project I'm working on I have got a list List<Item> with objects that Is saved in a session. Session.Add("SessionName", List);
In the Controller I build a viewModel with the data from this session
[Code]....
and in my View I loop trough the list of Items and make a form for all of them to be able to remove the item.
[Code]....
When the post from the submit button is handeld the item is removed from the array and post back exactly the same viewModel (with 1 item less in the itemList).
return View("view.ascx", viewModel);
When the post is handled and the view has reloaded the value's of the html.Hidden and Html.Textbox are the value's of the removed item. The value of the html.Encode is the correct value. When i reload the page the correct values are in the fields. Both times i build the viewModel the exact same way.
I am getting a serialization error trying to use Session State Server instead of InProd. However, I can't figure out what is causing the error in session. I was given some code to add to the page to loop through the session object and figure out if each item in it is serializable. My problem is I don't know where to place the code in the ASP.NET page. In tracing through the code, the error just appears after steping through objects outside of the page and not when setting session. There must be some place that I can place the code on the page that is after all session objects are set but before the page will error. Where would that be?
View 2 Replies