Bootstrap Contrôle de Contenu Modal

Ce projet illustre un composant conçu pour un client qui exploite un site Web bilingue. Nécessitant une solution polyvalente mais uniforme, le résultat final constitue un ajout élégant aux plates-formes ASP.NET et Bootstrap4.

Composants

Problème

Le site Web gère le contenu bilingue au moyen de fichiers de ressources. Le contenu en anglais, français et espagnol est stocké dans des fichiers correspondants avec des fichiers en anglais par défaut, les autres étant identifiés par un suffixe «.fr-Ca» ou «.es-Us» en conséquence. La définition d'une culture via CultureInfo sur l'une de ces langues détermine le fichier de ressources utilisé. Bien que cette configuration fonctionne parfaitement pour les pages rendues telles que Razor, les fichiers statiques tels que Javascript ne peuvent pas extraire le contenu des fichiers de ressources.Le projet avait initialement abordé ce problème dans diverses implémentations délicates, telles que la définition de variables JavaScript globales dans Razor ou via l'appel Ajax sur document prêt. Destinées à utiliser le contenu de variable global dans les alertes, les confirmations et diverses formes modales, ces méthodes de récupération de contenu bilingue étaient indéchiffrables, disgracieuses et inappropriées pour un projet destiné à des déploiements à plus grande échelle.

Solution

Deux méthodes de récupération de contenu bilingue, Static Content et Dynamic Content, extraient le contenu des fichiers de ressources au chargement ou à la demande, et présentent ce contenu dans des éléments modaux appropriés. Chaque élément modal est soumis via un script standard et une convention de dénomination cohérente.

Contenu Statique Modal

Le contenu statique, tel que les alertes et les messages de confirmation, ne change pas entre les chargements de page. Le contenu statique est récupéré dans le rendu Razor lors de la demande et affiché via les modaux Bootstrap.

Contenu Modal Dynamique

Dynamic content, such as a form, can change per item associated to the calling element. Dynamic content is retrieved on modal open event. The event makes an Ajax request along with an Id and Action type. The MAAction determines the partial view and model, the MAId is the unique identifier.

Produit

UGS Nom du produit Description du produit Prix ​​(CAD) Les options
CPINT00073 Intel Core i5-9400F Coffee Lake 6-Core/6-Thread Processor 209.00 Modifier Supprimer
132 123 123 123.00 Modifier Supprimer