ASP.NET maintenant le ViewState |
Sous votre forme de Web, vous pouvez sauver beaucoup de codage en maintenant le ViewState des objets.
|
Maintien du ViewState
|
Dans l'asp classique, quand une forme est soumise, toutes les valeurs de forme sont se sont dégagées. Supposer que vous avez soumis une forme avec beaucoup d'information et le serveur revient avec une erreur et vous devrez aller de nouveau à la forme et corriger l'information. Vous cliquez le bouton arrière, et ce qui se produit ....... TOUTES LES valeurs de forme est S'EST DÉGAGÉ, et vous devra commencer encore une fois ! et l'emplacement n'a pas maintenu votre ViewState.
Toutes les fois qu'une forme est soumise dans asp .NET, la forme réapparaît dans la fenêtre de navigateur ainsi que toutes les valeurs de forme. Comment est-ce possible ? C'est parce qu'asp .NET maintient votre ViewState et le ViewState indique le statut de la page une fois soumis au serveur. Avec un runat= " serveur " de <form > la commande, le statut est définie par un champ caché placé sur chaque page. Le code source a pu regarder n'importe quoi de pareil :
|
<form name="_ctl0" method="post" action="page.aspx" id="_ctl0">
<input type="hidden" name="__VIEWSTATE"
value="dDwtNTI0ODU5MDE1Ozs+ZBCF2ryjMpeVgUrY2eTj79HNl4Q=" />
.....some code
</form>
|
|
Le maintien du ViewState est le défaut plaçant pour des formes de Web d'ASP.NET et si vous voulez ne pas maintenir le ViewState, ne pas inclure la page directive EnableViewState= %> " faux " de <%@ au dessus d'une page de .aspx ou ne pas ajouter l'attribut EnableViewState= " faux " à n'importe quelle commande.
Le regard au dossier et à lui suivants de .aspx démontre la « vieille » manière de la faire. Quand vous cliquez sur le bouton de soumission puis la valeur de forme disparaîtra :
|
<html>
<body>
<form action="demo_classicasp.aspx" method="post">
Your name: <input type="text" name="fname" size="20">
<input type="submit" value="Submit">
</form>
<%
dim fname
fname=Request.Form("fname")
If fname<>"" Then
Response.Write("Hello " & fname & "!")
End If
%>
</body>
</html>
|
|
Voici la nouvelle manière de faire asp employant .NET. Si vous cliquez sur le bouton de soumission puis la valeur de forme ne disparaîtra pas :
|
<script runat="server">
Sub submit(sender As Object, e As EventArgs)
lbl1.Text="Hello " & txt1.Text & "!"
End Sub
</script>
<html>
<body>
<form runat="server">
Your name: <asp:TextBox id="txt1" runat="server" />
<asp:Button OnClick="submit" Text="Submit" runat="server" />
<p><asp:Label id="lbl1" runat="server" /></p>
</form>
</body>
</html>
|
|
|
|
Mots-clés :
Asp .NET maintenant le ViewState, variables de session d'asp, commande d'utilisateur de viewstate, viewstate de c#, viewstate de datagrid, viewstate de Javascript, msdn de viewstate, viewstate s'ajoutent, datagrid d'asp, biscuits d'asp, données de viewstate, session de viewstate, viewstate de répéteur, viewstate d'ensemble de données, viewstate de listbox, session d'asp, a lu le viewstate, viewstate de treeview, viewstate de dropdownlist, viewstate de page, biscuit d'asp, en utilisant le viewstate, objet de viewstate, cachette d'asp, propriété de viewstate, viewstate de checkbox, base de données d'asp, Javascript d'asp, fonction d'asp
|