2010-04-21 4 views
2

Avoir un bug bizarre en production et se demander s'il est possible qu'une page web à moitié soumise soit traitée par le serveur?asp.net peut-on traiter une demi-page Web soumise?

La page n'a pas état d'affichage juste en utilisant les contrôles anciens html simples et l'accès aux données affichées dans répéteur sur l'arrière via Request.Form [nom], etc.

Est-il possible pour une demande à tronquer peut-être en raison à la connexion Internet perdue et la page encore traitée par le serveur. Par conséquent si le champ ne fait pas partie de la demande Request.Form [nom] pourrait aboutir à null?

Je sais pouvoir utiliser fiddler pour modifier la requête, mais malheureusement, nous ne sommes pas autorisés à changer de politique de groupe et à changer le proxy!

Merci beaucoup

Répondre

1

Est-il possible qu'une requête soit tronquée peut-être en raison d'une perte de connexion Internet et de la page encore traitée par le serveur?

Oui cela est possible, si quelqu'un appuyez sur le bouton soumettre, même si la page n'est pas complètement chargé le navigateur fermer le formulaire et soumettre qu'ai jamais jusqu'à ce moment. !

Pour vérifier si la page est pleine envoyer, à gauche EnableEventValidation = true Si la page est envoyée pas complètement, alors vous obtenez une erreur de lancer.

Je pense aussi que la fonction Page.IsValid fait un travail similaire. Si la page est Valide alors vous obtenez toutes les données.

Donc, si vous avez un retard sur une partie d'une page, vous obtenez ce que tout navigateur de données a jusque là.

Pour tester ce que je dis utiliser ce code dans votre page, le moment que votre page est atteint ce délai, faire un clic sur un bouton, et vous obtenez uniquement les données jusqu'à ce point.

<% 
Response.Flush(); 
System.Threading.Thread.Sleep(10000); 
%> 

Toute page peut soumise avec des données corrompues, se produit plusieurs fois,

et c'est pourquoi ms ont inclure le __EVENTVALIDATION contrôle caché dans chaque page (sauf si vous l'avez désactivé), pour vérifier Si la page est corrigée, renvoyez-la.

+1

Merci peut maintenant répliquer avec votre suggestion et explique le comportement étrange. – c00ke

0

Ce n'est pas possible. La page est soumise ou non.

Pour déboguer le problème, consignez tous les champs du formulaire (nom et valeurs) et recherchez les erreurs qui s'y trouvent. Les chances sont que vous utilisez le même ID ou Name et c'est la raison pour laquelle vous perdez des champs.

Questions connexes