State Management :: How To Create Each Visitor To A Webpage
Jun 20, 2010
whenever any internet user visit any site on the world wide web, a session is created by the site for that useram i right? or is the session created by the iis on webserver?and this sessionwhat is it, yes i know session variables and how used them, but never understood what is this sessionwhat information does it have
This is fetching the IP address alright, but now I want to know the country of the visitor and USE that country name to redirect the visitor to some webpage accordingly.
I came across this library but have no clue how to use it in the project. Actually I do, but I am not sure so I am asking.
http://ipaddressextensions.codeplex.com/
When I download from the above the ZIP folder has a DLL file and an XML file. Now, what do I do with these two? Like include in the project. Then what do I type in the code file?
Something like the following.
if (countryName=="France") { response.redirect("www.mysite.fr") [code]....
How do I go about it? Also do I really need to type SO many if blocks for ALL the countries. How do I shorten this code?
now i need to test on a website, which i able to login to the main website and some of the sub-website or sub page. but when i click on 1 of the link to link to the page. it always show me Timeout expired.
I already try to restart the IIS admin service and make sure my database is up and connected.
now i test on my development server. so the website i browse is at localhost.
Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.
The error i get as below. hopefully get some idea to solve this issue.
Description: An unhandled exception occurred during the execution of the current web request. review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.Data.SqlClient.SqlException: Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.
Source Error:
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
Stack Trace:
[SqlException (0x80131904): Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.] System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) +862234 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) +739110 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) +188
I'm still debugging my application so it's on the local server. As I debug and stop then debug again, eventually lblNoOfUsers.text turns to "0" instead of "1", even as I'm navigating my application. It only turns to "1" again if I log out and sign back in. It's almost as though Membership.GetNumberOfUsersOnline my login are referencing two different session states. How is this possible? Does asp.net create a new session state cookie each time I start debugging?
I have to maintain session of two users on a sigle page.And the path is. UserPath:
1.User logins with his credentials((We retrive their credentials from login table) . 2.He invites some of his friends for a birthday party. 3.And send an url link to share some of the gifts with them in which gifts are provided in Share.aspx page. 4.Userlogouts.
Invites path:
1.Invite logs in with his credentials(We retrive their credentials from invites table). 2.He is directed to go to Share.aspx and list the items he require. 3.And he logs out.
Now i have problem in maintaining session for both the user and invite. How can i maintain the session so,that the user can identify a particular invite from the list of invites an his chosen items.
I have a website that has 10 aspx pages in it, and I'm trying to count how many users are on any one page at a time, and display that number on the web page. I have set it up to use an Application object ("TotalViewers"), and initialize it to 0 in the Application_Start event handler of the global.asax file. My reasoning (probably way off base) is to increment the count on each page load, and then decrement the count on each page unload. The increment part works ok, but when I add the code in the page unload event handler to decrement, it seems that Unload happens before the Page is presented to the client, so the value always stays the same (adds one in page load, subtracts one in page unload).
How else can I track number of users on each page? (simply, becuase I am still a beginner). I have already done some google searching and haven't come up with anything useful.
All my pages are being navigated via a TreeView control.
I deploy a simple web app,that works fine on my local system, on a remote server. The webform consist of a Menu control and a Listview control. If I browse the page and then leave it for like 20 minutes untouched and then try to select an entry from the menu I am getting the following error -
Webpage error details User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; InfoPath.1; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; AskTB5.6) Timestamp: Wed, 28 Apr 2010 07:39:24 UTC
Message: Sys.WebForms.PageRequestManagerServerErrorException: An unknown error occurred while processing the request on the server. The status code returned from the server was: 500 Line: 4723 Char: 21 Code: 0 URI: http://www.shoeslocation.com/ScriptResource.axd?d=w3IpLZb6A3e5QHkk7kOTg4vdE8qw_8oIJ-6Kv5NpYYlCqyodfByoMbMvCI7RsUpH3U_p3tMqnuLd_nCq_qPaX4weg2w6s1FlfA_eQbVY-nU1&t=55414254
Before that I used to get the following error -
Validation of viewstate MAC failed. If this application is hosted by a Web Farm or cluster, ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster.So I added the following to the Pages tag in the web.config validateRequest="false" enableEventValidation="false" viewStateEncryptionMode ="Never"
I'm curently developing web application which uses standard form authorization and, of course, server session objects (quite classic app). Now I'm developing client side component, which base functionality is to allow users to acquire tiif/jpg/pdf document from scanner (client side) and send it to server. Because of scan complexity and need for very user friendly interface i decided to implement Activex object (object written in .net 2.0). Until now all was ok, so I have got activex which succesfully registers and scan documents on client - but i cannot manage with sending files to server.
My concept of sending files was like that:
- preparing Upload.aspx web page wich is used for reciving files sended by POST method and saving files in database (of course to proper save in database i need some current user context information) - in ActiveX i decided to use System.Net.HttpWebRequest object to prepare and send data the problem was third point:
- i thought that in-proc activex object would "derive" web session form web page activex is placed on - but i was wrong (or i made it wrong). Whenever i send request form Activex, in response i got login.aspx page - so it looks that new session is created and new authorization is needed.
I was trying to pass to my Activex values stored in "ASP.Net_SessionId" and ".ASPXAUTH" cookies, as i found that these are the values identifying session and athorized user - but with no luck.
I think, that becaause HTTP is stateless protocol all information needed to "connect to/share" existing session on IIS server need to be included in request data, so there must be way to add these information to request sended from my activex.
I would be very grateful, if someone could provide me information what should i add (headres/cookies/etc... ?) to my request data so it could share session from "parent" web page.
I am using the following code to ensure that the web pages in my website are not cached by the browser:
this.Response.Expires = 0;
this.Response.AppendHeader("Pragma", "no-cache");
this.Response.Cache.SetNoStore();
This is working fine & the browser displays a page with the message, "Warning. This page has expired....". Is there any way I can display a custom page instead of the default page shown by the browser?
I'd like that when a user logoff or his session expires, tha SessionID is no longer valid.
I've found the way to do it when the user logoff, simply doing:
[Code]....
But I don't know how to do it when the session has expired. Apparently, if the session has expired and the browser tries again to connect, the same SessionID will be recycled, and I want the server issues a new one, how can I do it?
Very new to ASP.NET and C# (somewhat knowledgable in PHP) I have an ASP.NET web application and need to manage access to pages based on a 'status' stored in a cookie. I would like to use the following code to create the cookie in a login method.
HttpCookie cookie = new HttpCookie("UserCookie"); cookie.Value = "status"; <-- this will be replaced with a variable once its working cookie.Expires = DateTime.Now.AddHours(1); Response.SetCookie(cookie);
My problem is that the only place I can put this code where it works is in the global.asax Session_Start method. It simply doesn't work anywhere else. I am checking the cookie creation in firefox options and see the ASP.NET_SessionId created but nothing else (This is all running on localhost).
Is the session status somehow interfering with the cookie creation? Do I need to configure something in Web.config? It would appear that the only time I can create a cookie is on Session_Start. Does anyone have any tips, perhaps I am missing something simple?
I am developing a new website and I have a very strange problem. Depending on a simple query string parameter value I have "Internet Explorer cannot display the webpage" or a correct page. Let me show a couple of examples:
This url works, and displays the value passed in the "data" parameter:
http://62.22.11.221/default.aspx?data=cppexample
But this url does not work and I don't really know why:
i am trying to create a Unique order number so i tried to use the code above but every time i enter the quite the page the number get rest.
If (ViewState("counter") Is Nothing) Then ViewState("counter") = 1 Else ViewState("counter") = ViewState("counter") + 1 End If OrderNum.Text = ViewState("counter") If (ViewState("counter") Is Nothing) Then
I'm creating a website where I want people not to be able to create link to certain pages.The site work like this: The user do a serch for a document and click the link to view it, then he can view the document. If the user somehow adds the URL to favorites he should not be able to view the document when he at some time later tries to view the document. In addition if the user sends the URL to other people they should not be able to view the document.
Currently I am creating some dynamic controls on my page these can be hundreds of controls.Some of these will be available depending upon the input of the page so you can say the visibility will be different. This page in fact represents the dozens of pages.I want to create these pages from viewstate, e.g I have created 5 textboxes on page_Init() and then want to store these in Viewsate and next time if needed then load from the view state.In the other words can I create the and store the whole control object with all of the properties in viewstate, if so then how I will be able to accomplish this.
is it possible to create a new Session Id using C# and without using a Response.Redirect(...Page ... ). I want to create a new session Id on page load.
Reasons for doing so:
I have a testing application that creates IFrames to act as users. the problem I have is that with Multiple Instances (or Multiple IFrames running the same application "Default.aspx") all IFrame's are using the Same Session ID. I have variables stored in the Session ID that I need to be seperated from IFrame to IFrame. Ex:
IFrame 1 gets passed a query string of a client ID "1" IFrame 2 gets passed a query string of client ID "2"
WHen the IFrame 2 gets loaded the session state of IFrame 1 inherits the IFrame 2's session's making the Client ID in Session 1 = "2". See what I am getting at?
I want to be able to have each IFrame create its own Session State. I guess there is 2 questions to this, 1.) is it possible to create a new Session State by abandoning the original and by doing so will that abandon both session ID's and just create an ID for both IFrames being the same ID? 2.) How can I do this if it is possible :-)
I'm attempting to create Data Access Layer for my web application. Currently, all datatables are stored in the session. When I am finished the DAL will populate and return datatables. Is it a good idea to store the returned datatables in the session?
Note: generally the number of rows in the datatable will be small < 2000.
This source what i have used to create cache object.Also i have checked if "AppCache_Caption" cache object is available or not. [Code].... Right now i have checked and created my login page page_load event.It will create cache object every time me access the login page.What are the conditions wrong my source?My expectation, cache object creates only one time.It will not create everytime.
I am creating a site that will host my virtual resume and would like to set it up so the visitor would enter a simple code to advance past the default page. I am not looking to create a unique login for each visitor, I just want to control who sees the information online. I have used the web controls in visual studio express for for creating logins on other sites, which included additional support code like "User.Identity.IsAuthenticated == false" to redirect visitors on other sites but I am looking to see if there is a more simple way of handling this.
I searched on this all morning, but I'm still not sure. If I create a session variable to pass some data between a couple of pages, does that variable time out after it reaches the timeout period set on IIS, or will it persist for the entire time the user keeps a session alive? For example, session variable is used shortly after login and then never again. Susy uses other pages for two hours and keeps session active. Did that first session variable die after 20 minutes, or is it still there 2 hours later?
I try to create a persistent cookie to store a preferred language on our website, but it doesn't work.
So, to isolate the problem, I created a new website, with a blank page and with the code behind bellow. If I click the button, the page post back and I get this: