Maintenant, tout ce que vous avez à faire est de définir rptLetters. DataSource à la table nouvellement créée. J`ai choisi de rendre l`alphabet complet, mais seulement pour faire des lettres qui ont des liens actifs de données correspondantes. Ainsi, ce code parcourt toutes les entrées de la collection alphabet et vérifie chacun à son tour. Si la lettre actuelle de la collection alphabet est également dans la collection FirstLetters, ou la lettre actuelle est “0-9” et il y a des entrées qui commencent par des nombres, ou la lettre en cours est l`option “All”, alors un lien doit être restitué. Sinon, l`élément de liste est donné une classe d`inactif et la lettre est restituée dans une étendue au lieu d`un élément d`ancrage. Si la lettre actuelle est la même que la valeur SelectedLetter, ou qu`il n`y a pas de lettre sélectionnée et que la lettre est “All”, le lien reçoit une classe d`actif, représentant la page actuelle des données. Enfin, les noms de produits sont restitués au navigateur. Ci-dessous décrit en détail le processus de création d`une table personnalisée à laquelle le contrôle rtpLetter précédemment discuté est lié. L`aide déplace la construction de l`alphabet à partir du ViewModel et dans le corps de la méthode. Il supprime également la nécessité de la propriété NamesStartWithNumber, de sorte que le ViewModel révisé est plus mince: le lien qui a été cliqué est alimenté dans la méthode en tant que paramètre-le selectedLetter. Sa valeur est utilisée pour remplir sa propriété respective dans le ViewModel nouvellement instancié.
Les premières lettres de tous les produits existants sont obtenues à partir de la base de données à l`aide d`une requête LINQ. Instinct peut vous amener à essayer d`utiliser une requête qui inclut la méthode d`extension distinct (), mais en fait, GroupBy est le meilleur opérateur pour ce type de requête. Les données sont regroupées par la première lettre de chaque ProductName, qui devient alors la clé pour chaque groupe. Cette valeur est ensuite projetée dans la liste qui forme la propriété FirstLetter du ViewModel. Les systèmes de pagination sont exploités par des transporteurs commerciaux, souvent en tant que service d`abonnement, et ils sont également exploités directement par les utilisateurs finaux en tant que systèmes privés. Les systèmes de transporteurs commerciaux tendent à couvrir une plus grande zone géographique que les systèmes privés, tandis que les systèmes privés tendent à couvrir plus minutieusement leur zone limitée et à délivrer des messages plus rapidement que les systèmes commerciaux. Dans tous les systèmes, les clients envoient des messages aux pagers, une activité communément appelée pagination. Les opérateurs de système attribuent souvent des numéros de téléphone uniques ou des adresses e-mail aux téléavertisseurs (et aux groupes prédéfinis de téléavertisseurs), ce qui permet aux clients de se faire une page par appel téléphonique, e-mail et SMS.
Les systèmes de pagination prennent également en charge différents types de protocoles de connexion directe, qui sacrifient l`adressage global et l`accessibilité pour un lien de communication dédié. Les clients de logiciels de surveillance et d`escalade automatisés, souvent utilisés dans les hôpitaux, les départements informatiques et les compagnies d`alarme, ont tendance à préférer les connexions directes en raison de la fiabilité accrue. Les petits systèmes de pagination, tels que ceux utilisés dans les établissements de restauration et de vente au détail, intègrent souvent un système de clavier et de pagination dans une seule boîte, réduisant à la fois le coût et la complexité.