Colonnes du menu de notes du chapitre 5 et implémentation des réponses
La page d'accueil complétée au chapitre 4 est en fait très imparfaite. Premièrement, il n'y a aucun lien dans les colonnes du menu de notes et on ne peut pas cliquer dessus. Deuxièmement, si vous cliquez sur le titre de la note, vous ne pouvez pas créer de lien ; vers la page de réponse ; Troisièmement, si vous cliquez sur l'auteur, vous ne pouvez pas créer de lien vers les informations de l'auteur. Ces fonctions seront améliorées dans ce chapitre.
: Modifiez le lien hypertexte de la colonne de menu dans le modèle bkblog.dwt.aspx, puis mettez à jour toutes les pages Web lors de l'ouverture de la page d'accueil, parcourez pour afficher le contenu des notes d'étude dans ; par ordre décroissant de temps, cliquez sur la colonne du menu. Il peut également afficher le contenu des notes d'étude par ordre décroissant de temps selon les colonnes.
5.1.1 Créer un menu de modèle
(1) Ouvrez le modèle bkblog.dwt.aspx, sélectionnez le texte dynamique (menuda.LM), créez un lien hypertexte, créez un lien vers la page d'accueil (index.aspx), sélectionnez [Vue d'affichage du code] et déplacez passez la souris à l'endroit où la ligne verticale rouge est indiquée sur la figure 5-1-1. (Aucune instruction particulière ci-dessous, tous les symboles sont des caractères anglais)
Figure 5-1-1 Déplacez la souris sur l'attribut de lien
(2) Entrez "?menanw=" (menanw est la variable de paramètre), passez au panneau [Binding], faites glisser le champ LMID sous l'ensemble de données (menu) vers tout à l'heure Après le signe égal d'entrée, le résultat est présenté dans la figure 5-1-2 :
Figure 5-1-2 Insérer des attributs dynamiques (a.href)
(3) Basculez vers le panneau [Server Behaviour], vous pouvez voir qu'un comportement de serveur a été ajouté : attributs dynamiques (a.href), comme le montre la figure 5. -1-3 :
Figure 5-1-3 Panneau de comportement du serveur
(4) Sélectionnez le menu « Accueil » et créez un lien vers index.aspx ; sélectionnez « Contactez-nous » et créez un lien vers mailto:[email protected].
(5) Enregistrez le modèle bkblog.dwt.aspx et la boîte de dialogue illustrée à la figure 5-1-4 apparaîtra.
Figure 5-1-4 Boîte de dialogue Mettre à jour le fichier modèle.
(6) Cliquez sur le bouton "Mettre à jour" pour compléter les colonnes du menu de notes et mettre à jour la page d'accueil index.aspx.
5.1.2 Implémenter l'affichage des colonnes sur la page d'accueil
(1) Ouvrez la page d'accueil index.aspx, passez au panneau [Server Behaviour], double-cliquez sur l'ensemble de données (Ztre) et dans la boîte de dialogue contextuelle de l'ensemble de données , cliquez sur le bouton "Avancé", comme le montre la figure 5-1-5. Sélectionnez la commande SQL dans la zone de texte [SQL] à copier. Il est recommandé de la coller dans le texte du Bloc-notes ou Word nouvellement créé. Elle sera d'une grande utilité dans les étapes suivantes (vous pouvez ignorer cette étape si vous êtes familier avec SQL. langue) .
Figure 5-1-5 Boîte de dialogue avancée du jeu de données
(2) Cliquez sur le bouton « Simple », sélectionnez le champ de filtre comme LMID dans le menu déroulant [Filtre], sélectionnez « Paramètre d'URL » comme méthode de transfert de paramètres et l'entrée La variable de paramètre est menanw. Appuyez sur le bouton « OK », le résultat est affiché dans la figure 5-1-6 :
Figure 5-1-6 Modifier l'ensemble de données Ztre pour filtrer
(3) Parcourez la page d'accueil avec IE, mais les résultats de navigation ne sont pas enregistrés, comme le montre la figure 5-1-7
Figure 5-1-7 Image de navigation sur la page d'accueil
(4) Dans la navigation IE de la page d'accueil, cliquez sur le lien "Programmation réseau", le résultat est présenté dans la figure 4-3-3 du chapitre précédent, montrant toutes les notes d'étude de programmation réseau. .
"Attendez une minute, ce n'est pas conforme à l'idée de conception originale ! Cela ne peut être affiché que par colonnes, pas toutes les notes d'étude !" Il y a aussi un problème de transfert de données entre les pages ASP.NET : données entre formulaires dans les applications Windows ! Le transfert peut être réalisé en définissant des variables globales (variables statiques publiques) et d'autres méthodes. Toutefois, ces méthodes ne peuvent pas être utilisées pour transférer des données entre des pages Web dans ASP.NET. Par exemple : lorsque vous cliquez sur la barre de navigation de l'ensemble de données, les données de Ztre_currentPage seront transférées, mais les données de menanw ne peuvent pas être transférées. C'est-à-dire que lorsque vous cliquez sur un lien hypertexte de la barre de navigation de l'ensemble de données, les données. transféré par menan sera toujours nul, ce qui n'est pas possible. Il réalise non seulement l'affichage des colonnes, mais effectue également l'affichage de la pagination sous les colonnes en même temps. Voici une solution utilisant la session pour transmettre des paramètres.
(5) Afin de transmettre la variable de paramètre menanw à session("menanw"), passez à la vue code et insérez le code indiqué dans le cercle rouge de la figure 5-1-8 avant la balise <html>.
Figure 5-1-8 Insérez la page dans index.aspx pour charger la fonction par défaut
(6) Sélectionnez l'ensemble de données (Ztre) dans le panneau [Server Behaviour], comme indiqué dans la figure 5-1-9, la partie noire est le jeu de données (Ztre) Code de définition.
Figure 5-1-9 Code de l'ensemble de données Ztre
(7) Recherchez le code :
CommandText='<%# "SELECT * FROM ZTRE WHERE LMID = ? ORDER BY ZITIME ASC" %>'
Remplacez le code ci-dessus par :
CommandText=' <%# IIf(((request.QueryString("menanw")<>nothing) ou Request.QueryString("Ztre_CurrentPage") <> Nothing),"SELECT * FROM ZTRE WHERE LMID = ? ORDER BY ZITIME DESC","SELECT * FROM ZTRE ORDER BY ZITIME DESC") %>'
(8) Code trouvé :
<Parameter Name="@LMID" Value='<%# IIf((request.QueryString("menanw") <> Nothing), request. QueryString("menanw"), "") %>' Type="Integer" /></Parameters></MM:DataSet>
Remplacez le code ci-dessus par :
<Parameter Name="@LMID" Value='<% # IIf((session("menanw") <> Nothing), session("menanw"), "") %>' Type="Integer" /></Parameters></MM:DataSet>
(9) Effectuer une navigation IE , le résultat est présenté dans la figure 4-3-3 du chapitre 4. Complétez les idées de conception établies.
Idée de conception d'implémentation de la page de réponse : En cliquant sur le titre de la note, une page peut être liée, comprenant la note et toutes les réponses correspondantes. De la section précédente, on peut voir que cela n'est pas difficile. Cela peut être réalisé en transmettant les paramètres de code de cette note uniquement sur le lien hypertexte du titre de la note.
5.2.1 Conception de page de base
(1) Créez une nouvelle page dynamique ASP.NET VB hf.aspx générée par le modèle bkblog.dwt.aspx, insérez la table ztre dans la zone modifiable du corps principal et effectuez les conceptions associées. Le résultat est affiché. dans la figure 5-2-1 montre :
Figure 5-2-1 Diagramme de conception de la table ztre
(2) Démarrez Access2003, établissez la table FH, la requête de connexion à la table YH HFRE, en fait la vue de connexion et les champs d'affichage sont illustrés dans la figure 5-2-2.
Figure 5-2-2 Interrogez la conception pertinente de HFRE
(3) Suivez les étapes (1) à (3) de la section 4.2.2 Ensemble de données pour ajouter l'ensemble de données Ztre, faites glisser les champs vers les positions correspondantes et effectuez un texte dynamique (Ztre. ZYTEXT), le résultat est présenté dans la figure 5-2-3 :
Figure 5-2-3 Lier les données à la table ztre
(4) Modifiez l'ensemble de données Ztre à filtrer, le champ de filtre est ZTID, sélectionnez "Paramètre URL" comme méthode de transfert de paramètres et la variable de paramètre d'entrée est ztanw.
(5) Ajoutez l'ensemble de données Hfre, le champ de filtre est ZTID, sélectionnez "Paramètre URL" comme méthode de transfert de paramètres et la variable de paramètre d'entrée est ztanw. Le résultat est présenté dans la figure 5-2-4 :
Figure 5-2-4 Conception de l'ensemble de données Hfre
(6) Faites glisser le champ de l'ensemble de données Hfre vers la position correspondante du tableau ztre, définissez le paramètre de format du texte dynamique (Htre.HFTEXT) sur "Encodage—Format d'encodage HTML ", et modifiez le premier champ du tableau ztre. Les lignes 5, 6 et 7 sont définies comme des zones répétitives et les données sont paginées dans le tableau ztre. Les résultats sont présentés dans la figure 5-2-5 :
Figure 5-2-5 Lier le jeu de données Htre à la table ztre
(7) Ouvrir la page d'accueil index.aspx, sélectionner le texte dynamique (Ztre.ZTNAME), créer un hyperlien, créer un lien vers hf.aspx, passer au code view et placez le lien Changez l'attribut en : hf.aspx?ztanw=. Après avoir fait glisser le champ ZTID sous l'ensemble de données Ztre jusqu'au signe égal, le résultat est tel qu'illustré dans la figure 5-2-6 :
Figure 5-2-6 Ajouter des hyperliens dynamiques dans le code
(8) Enregistrez hf.aspx et index.asps, entrez quelques enregistrements dans la table HF et la table YH correspondantes dans Access, et parcourez index.asps dans le navigateur IE, cliquez sur le sujet de la note d'étude avec la réponse, comme le montre la figure 5-2-7 :
Figure 5-2-7 Affichage de la page de réponse
(9) Cliquez ensuite sur n'importe quel lien hypertexte dans la navigation de l'ensemble de données, le résultat est tel qu'illustré dans la Figure 5-2-8 :
Figure 5-2-8 Les résultats de la page après avoir cliqué sur la navigation dans l'ensemble de données
! Tout est parti ! C'est le problème du transfert de données entre les pages Web ASP.NET. Il doit être modifié comme à la section 5.1.
(10) Passez à la vue Code et insérez le code indiqué dans le cercle rouge de la figure 5-2-9 avant la balise <html>.
Figure 5-2-9 Insérer la page dans hf.aspx pour charger la fonction par défaut
(11) Rechercher le code dans le jeu de données Ztre :
<Parameter Name="@ZTID" Value='<%# IIf((request.QueryString ("ztanw") <> Nothing), request.QueryString("ztanw"), "") %>' Type="Integer" />
Remplacez request.QueryString("ztanw") dans le code ci-dessus par session("ztanw "), Le code résultat est modifié en
<Parameter Name="@ZTID" Value='<%# IIf((session("ztanw")<> Nothing), session("ztanw"), "") %>' Type="Integer" />
(12) Rechercher le code dans l'ensemble de données Hfre :
<Parameter Name="@ZTID" Value='<%# IIf((request.QueryString("ztanw") <> Nothing), request .QueryString("ztanw" ), "") %>' Type="Integer" />
Remplacez request.QueryString("ztanw") dans le code ci-dessus par session("ztanw"), et le code résultant est modifié en
< Nom du paramètre="@ZTID" Value= '<%# IIf((session("ztanw")<> Nothing), session("ztanw"), "") %>' Type="Integer" />
(13) Enregistrez hf.aspx.