Comment puis-je me débarrasser de:Comment se débarrasser de View State complètement dans .NET
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="..."/>
Complètement!
Comment puis-je me débarrasser de:Comment se débarrasser de View State complètement dans .NET
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="..."/>
Complètement!
Vous devez ajouter le EnableViewState = "false" à la directive @Page dans le fichier Default.aspx.
<%@ Page Language="C#" AutoEventWireup="true"
Codebehind="Default.aspx.cs" Inherits="Sample._Default"
EnableViewState="false" %>
Ensuite, ajoutez le code suivant au fichier Default.aspx.cs. Cela supprime le champ masqué du code HTML généré.
#region Disable ViewState
protected override void SavePageStateToPersistenceMedium(object state)
{
}
protected override object LoadPageStateFromPersistenceMedium()
{
return null;
}
#endregion
Comme indiqué ci-dessous, il est plus facile de désactiver l'état d'affichage au niveau web.config (ou même au niveau de machine.config).
Je me demande pourquoi cela ne marche pas pour moi. Toujours avoir ViewState dans les requêtes GET. – ajeh
Je l'ai fait et viewstate est toujours là. Tout élément qui a 'runat = server' a aussi désactivé viewstate, viewstate est désactivé dans' web.config', mais la fichue chose toujours là! – ajeh
Je pense que vous pouvez le désactiver dans machine.config:
< Pages enableViewState = "false" />
Cela devrait désactiver ViewState pour toutes les pages. Au niveau du contrôle, EnableViewState = "faux"
Au niveau de la page, EnableViewState = false dans la directive Page.
Au niveau applicaiton ajouter ceci à .config, < pages enableViewState = "false">
Mis en œuvre tout cela et ayant toujours ViewState. – ajeh
#region Disable ViewState
protected override void SavePageStateToPersistenceMedium(object state)
{
}
protected override object LoadPageStateFromPersistenceMedium()
{
return null;
}
#endregion
Ceci est awesome.However, juste pour que chacun sache qu'il est encore rendu un vide viewstate champ caché
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="" />
Je serais mieux si vous avez ajouté ceci comme commentaire, pas comme réponse. – Monsignor
Il est évident que vous voulez vous débarrasser de viewstate tout à fait, mais, si vous Je voulais simplement l'optimiser, plutôt que de l'éteindre, vous pourriez trouver ma réponse à une autre question utile: http://stackoverflow.com/a/3865762/205245 –