Failed to load viewstate.The control tree into which viewstate is being loaded...etc
Two days ago,a colleague of mine tried to publish an asp.net
website (which is built in VS2008 using framework 3.5) to
our server,he configured everything in IIS (he made sure
that the selected asp.net version is 2.0) and launched the
website..at first it was working great but when he tried to
click on a specific treeview...BOOM..:
"Failed to load viewstate. The control tree into which
viewstate is being loaded must match the control tree
that was used to save viewstate during the previous
request. For example, when adding controls dynamically,
the controls added during a post-back must match the
type and position of the controls added during the
initial request."
In that page there were these control: a TreeView and a
Placeholder,when the user selects any node then it's
controls will be created dynamically into that
placeholder..for the first time it's working fine but when
(s)he select another node then that issue appears.
He called me to help him with this issue,for me this is the
first time I see such an issue,scratch my head then I
decided to eliminate the possibilities of this issue one by
one,at the development machine it's working perfectly,he
published the website at the local IIS and again..it's
working perfectly,I took a copy of the website and published
it into my laptop but no issues at all,so this is means that
it's not an issue in the code.
So there is something missing/wrong in our server [it has
Windows Server 2003],we went to the server and checked on
the web-config and the configurations on IIS...nothing wrong
so far,so I decided to check if the framework 3.5 is
installed or not and the answer: it wasn't installed
Of course he assumed that it was installed and there was
nothing to tell if it wasn't from the "ASP.Net version" in
IIS because frameworks 3.0 and 3.5 will not be listed there
[2.0 will be listed there instead],the only way to check if
it was installed or not is to search for the framework in
this path:[WINDOWS Folder]\Microsoft.NET\Framework or check
if it was installed in Add or remove programs.
The obvious solution for his case: We installed
Framework 3.5 SP1 into our server,did a restart to the
machine and it worked !
If anyone faced the same issue and solved it using the same
solution or with a different one please post it here to
share experience.