question:
Il existe un contrôle sur le formulaire Web. Il est préférable que ce contrôle accède à la base de données en temps réel. Une fois les modifications apportées à la base de données, les données seront soumises au client et les dernières données seront affichées.
analyser:
Parce que le client doit être mis à jour, la fonction d'horloge frontale de js doit être utilisée. Le serveur a changé et le client doit actualiser pour mettre à jour les données. Comment puis-je mettre à jour les données sans actualiser ou actualiser faussement la page. , c'est-à-dire que le client ne voit essentiellement aucune actualisation.
Solution : (merci de me corriger s'il y a des erreurs, mon niveau est limité, merci)
Il existe deux solutions principales : le temps réel et le sondage
Temps réel : déclenchez en ajoutant un déclencheur dans la base de données, puis en écrivant un fichier sur le serveur à utiliser comme sémaphore. Je pense que cette technologie est trop compliquée pour ce problème, donc je n'ai pas continué à l'étudier. Les amis intéressés peuvent aller sur MSDN pour la voir, mais elle peut en effet mettre à jour les données en temps réel, ce qui est plus efficace en temps réel. conversations.
Interrogation : 1. Utilisez la méthode xmlhttp sans actualisation. Pour cette méthode, vous pouvez lire l'article écrit par d'autres que j'ai transmis plus tôt, qui contient une introduction détaillée. Cependant, après l'avoir testé, j'ai découvert que ce qui est obtenu du serveur est le code HTML de la page entière. récupérez-en le contenu de contrôle dont vous avez besoin et répétez-le. La configuration est encore trop compliquée et pas forcément efficace.
2. Utilisez le framework HTML pour le compléter, qui est la méthode que j'écris principalement. Cette méthode est simple et facile à mettre en œuvre, je pense qu'elle est très utile pour les situations où seules de petites données sont affichées dynamiquement.
Introduction détaillée : écrivez iframe src="../test/WebForm2.aspx" à l'endroit où le HTML doit être mis à jour. Src est la page à connecter, puis ajustez la taille du cadre et des barres de défilement si nécessaire.
Créez une nouvelle page WebForm2.aspx comme page de connexion encadrée. Placez les contrôles qui doivent être mis à jour en temps réel dans cette page, puis dans l'événement Page_Load.
Private Sub Page_Load (expéditeur ByVal en tant que System.Object, ByVal et en tant que System.EventArgs) gère MyBase.Load
'Placez ici le code pour obtenir les mises à jour de la base de données et associez-le au contrôle End Sub
Ajoutez ensuite la méta HTTP-EQUIV="Refresh" content="1" URL="/test/WebForm2.aspx" au code HTML
Cela signifie que cette page sera automatiquement actualisée toutes les 1 secondes (vous pouvez également ajouter une horloge de premier plan telle que window.setInterval(function,1000) en fonction de la situation réelle), afin que le résultat soit terminé une fois la première page démarrée. , la deuxième page ne sera pas interrompue. Elle s'actualise après un certain temps, mais le client ressent la même chose que si elle n'était pas actualisée.