ViewState n'est valide que dans Safari

L'un des sites que je gère repose en grande partie sur l'utilisation de ViewState (ce n'est pas mon code). Cependant, sur certaines pages où le ViewState est surchargé, Safari lance une erreur "Validation du MAC viewstate failed" .

Cela semble se produire uniquement dans Safari. Firefox, IE et Opera se chargent tous avec succès dans le même scénario.

0

4 Réponses

You can do that. If an operad O acts on a space X, then the structure maps O(n) x Xn -> X induce homology operations H*O(n) ⊗ H*(X)⊗n -> H*(X). In particular, any path component in O(2) produces a multiplication on H*X, if it's in the same path component as its own image under the symmetric group action it's commutative, if the two composites of it are in the same path component of O(3) it's associative, et cetera.

En particulier si O est l'opérative associative (donc O (n) sont discrets) alors cette structure se réduit à la structure en anneau de Pontrjagin.

6
ajouté

Ma première escale serait de parcourir les éléments de la page et de voir quels contrôles:

  1. fonctionnera quand je désactiverai ViewState
  2. Peut être déplacé hors de la page et dans un appel AJAX pour être chargé si nécessaire

A défaut, et voici la clause de non-responsabilité - je n'ai jamais utilisé cette solution sur un site web - mais dans le passé où je voulais éliminer les ViewStates massifs dans des applications à public restreint, j'ai stocké ViewState dans la Session.

Cela a fonctionné pour moi parce que le nombre d'utilisateurs n'est pas significatif, mais si vous utilisez un site assez populaire, je ne recommanderais pas cette approche. Toutefois, si la solution Session fonctionne pour Safari, vous pouvez toujours détecter l'agent utilisateur et le fudge de manière appropriée.

0
ajouté

J'ai fait un peu de recherche sur ce sujet et même si je ne suis pas entièrement sûr de sa raison, je crois que c'est parce que Safari ne retourne pas le jeu de résultats complet (d'où le recadrage).

J'ai été en discussion avec un autre développeur et j'ai trouvé le post suivant sur Channel 9 qui recommande d'utiliser le service SQL State pour stocker le viewstate en évitant le problème de publication et la taille de la page.

http: //channel9.msdn .com / forums / TechOff / 250549-ASPNET-ViewState-architecture imparfaite /? CommentID = 270477 # 263702

Est-ce que cela semble être la meilleure solution?

0
ajouté

Pendant que j'appuie la solution Channel 9, sachez que dans certains environnements hébergés, Safari n'est pas considéré comme un navigateur de niveau supérieur. Vous devrez peut-être l'ajouter au navigateur de votre application pour utiliser certaines fonctionnalités ASP.Net.

C'était la cause première de quelques maux de tête que nous avions pour le site d'un client qui utilisait le contrôle du menu ASP.

0
ajouté