This isn’t true. As I mentioned on another thread, this is exactly what Session.SaveState is for.
Whenever a user makes a change that you would like them to be able to get “Back” to you call Session.SaveState. This method takes 1 to 3 parameters:
- Name as String - the name of the current state. Typically a distinct object to load, like a page.
- Data as String - the specifics of what needs to be loaded. If you were showing a form, you might encode the values into a JSON string.
- Replace as Boolean - this property determines whether the current item on this stack gets replaced by this new value. You might for instance replace the state of a form if the user types a large value into a TextArea.
Adding state info adds interim items to the browser’s page history. If the user clicks Back, the HashTagChanged event is called with the latest Name/Data combination so you can restore the user back to where they were. Information is stored in a stack so as you call this method, more and more items are added and can be accessed.
NOTE: if a user clicks back into the history stack and you call SaveState again, the browser will truncate the stack at that point and will wipe out the Forward stack. If you are going “back” to a state, don’t call SaveState again until the user makes a change that warrants that.