C# - How To Execute Server Side Code Just Before The Session Variable Expires
Oct 7, 2010
In my asp.net website I am creating a session upon user login and I would like to perform some operations in the database just before this session will expire.I am having problem in determining where should I write code and how will I know the session is going to expire.
I am not sure if 'session_end' event of 'Global.asax' suits my requirements as the session I want to check is created manually(not a browser instance).
I have a button where I use an Animation Extender. When I click the button I have to set OnClientClick="return false;" otherwise the Animation Extender closes. So that causes my problem. How do I execute server side code from this button? I have tried this code in my code behind, but there is an error:
Code: Dim strScript As String strScript = "<script>" strScript = strScript & "return false;" strScript = strScript & "</script>" ScriptManager.RegisterStartupScript(Me, GetType(Page), "MyScript", strScript, False) This is my code for the Animation Extender: Open data"></asp:Button>
i am not sure if my design have flaw but would like to know what others have to say, i am in a situation where i am trying to acheive two things in one click.
using : asp.net web form
i have a web form with few textbox and a gridview control and a button.
if i click on the button i am executing two things
1) asynchronously get data from server to client (working great) and able to display the data in the textboxes.
2) same click i want to bind the gridview.
[Code]....
recap:
1) jquery script execute asynchronously to get data from server to client and display in the textboxes 2) server side code to bind the gridview.
PROBLEM:
if i have onClientClick="return LoadDataById(); then it executes ONLY ajax code and does not execute server side but if have onClientClick="LoadDataById(); then it executes client and server but textbox value wipeout. (the textbox value popuplate through ajax)
When a user clicks a button I need to create a .bmp file on the server. After the .bmp file is created I will load it into the html page. Would Ajax be the best way to accomplish this?
Executing Server side code using Javascript. Here is the solution.In the Asp.net forums, I often see the question asked, "Can I call server-side code from the client/JavaScript?" Almost invariably, the responses given are "No, the client cannot access the server," or "You can only use WebMethods or PageMethods." The first response is not entirely correct, and unfortunately, WebMethods and PageMethods are static methods and therefore have no way to directly access the page.This is why I present to you the following "hack". I call it a hack because there really should be some way built into the ASP.NET AJAX Extensions that allow this approach directly. Instead, it relies on using controls in a manner that they aren't necessarily intended in order to obtain the desired result. But this "hack" does have a redeeming quality—it's incredibly easy.The Code:
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default2.aspx.vb" Inherits="Default2" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
I have a web app that needs to do two things at the same time. After a user clicks a button on the site, a javascript function needs to execute and while thats working I need the server side code for the button click to execute without waiting on the client side to finish.
To be more specific, the client side function takes about 23 seconds to complete, and while that is running the server side code promts the user for printing a document. So I need the javascript to run "in the background".
On localhost works well. On the hosting server expires very quickly. Sometimes after a minute, and sometimes after a few minutes.
I tried mode="StateServer" and mode="SQLServer", but first works the same, other doesn't work. The next problem is that End_Session in global.asax doesn't executes if mode is not InProc. And I need this.
How could I achive that session expires only when browser is closed or other url is typed. Just setting timeout doesn't work.
I'm evaluating two options of accessing a server side data on client side. Little bit confused about the efficiency or may be you can call it as finding best approach to do it.
I need to access a server side data may be an integer value in javascript on client side. I know about two options to do it.Create a public variable or property on server side and set it to javascript variable on client side as below:
var value = eval(<% =value %>);
Create a asp hidden variable and set value in this hidden variable from server side and access it through javascript using document.getElementById().
Which is the best approach and what are the pros and cons?
I have a requirement of adding server side variables in client side and other way round. Because I need to set a value from client side using javascript and access the same in code behind page.
I have table A in database A , in table A i have trigger to insert record to database B table A, each update and insert of database A -table A, triiger fire and insert record in database B table A, when i try to update some times asp.net application gives error
"Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding."
and then error log says System.Data.SqlClient.SqlException: Database 'database B is being recovered. Waiting until recovery is finished. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)[code]....
The text and style runs properly but the server side code is ignored. How would I write this so that it's not ignored? Do I have any options?
Text = Text.Replace("Blank Div", "<div class=""New""><% If Session(""User"") Is Nothing Then%><asp:LinkButton ID=""lbtnSignup"" runat=""server"">Sign up</asp:LinkButton><% End If%></div>")
I have an ASP.NET (3.5) web page which calls a few web methods (SOAP based) using jQuery's .ajax method. The web methods implement 'ScriptMethod' attribute and return JSON data. The web service file (asmx) is local to the same project.
I noticed these web methods execute synchronously on the server which means they run sequentially and affect performance negatively, some methods are waiting, when some of them are slow.
I read this article and I am not sure if I understand that WebMethods which implement Scriptmethod can run synchronously only (they implement IHttpHandler not IHttpAsyncHandler).
If this is true, I might have to change the design. I am looking for other designs, maybe like using WCF, where the browser can call webmethods using JavaScript and the web methods run asynchronously on the server.
In my application, I have one Gridview on click button of one of the column I show Modal popup Extender. In Popup window I display another GridView with paging. And also I want to do operations such as Update, Delete and Add. As all these are Link buttons none of the event associated with them are firing.
Is there any way to execute server side events on Modal Popup Extender.
in a form i have a buttoin, when click both OnclientClick and postback should happen. on clicking the "Email" button a client side "mailto" tag should do the work and pull a new message window on the client's machine.
whereas, the email addresses should be invoked by the post back. so , when clicking the button the server side post should happen and on return the client side script should be invokded with the values read during post back, and populate all the email addresses.
i need know how to first do a server hit take the values and then execute the client script with those values without using AJAX
If I have a standard HTML textbox: I can retrieve the value using Request.Form. But how do I go about populating this textbox from the server-side? I tried Request.Form["txtTest"] = "blah"; but got a readonly error.
How can I trigger a jQuery function with the Gridview Select button? I want that the select button trigger the jquery function that has the row details (it's already working with a asp:buttonfield ), and select the row so i can get the values and send it trough e-mail with another button. I don't know if this is possible. or, Can I trigger the jQuery function from code behind with the select button Sub? How?
[Code]....
This function capture the gridview cell values that are hidden and show them in a div outside the gridview (it works as row details). I have no problem with this.
[Code]....
All i need is a button that select the row index and/or values and trigger the jquery function . Or I can execute the jQuery function from server side. I don't know if it's posible.
I want to know page name when session expires so that I redirect user to that page after relogin. I am checking session in Master page's page load event
I am using Session variable throughout in my application and my timeout is 1 hour. Here I need to catch the exception for session expires in any global way across my application.
i want your opinion about the Response.AddHeader("Refresh", Convert.ToString((Session.Timeout * 60) - 20))that i have seen in some sites that is used for refresh the page every time a little bit before the session expires