Lors de précédents articles publiés sur le blog http://blog.codefluententities.com, nous vous avons montré comment utiliser certains producteurs d’interface utilisateur fournis par défaut avec CodeFluent Entities :
Dans cet article, nous allons mettre l’accent sur le fait que CodeFluent Entities est totalement indépendant de l’interface utilisateur. Afin d’illustrer ce propos nous allons vous montrer toutes les interfaces utilisateurs que CodeFluent Entities est capable de générer depuis le même modèle grace à ses différents producteurs. En effet, depuis un même et unique modèle, vous pouvez générer des écrans qui seront exécutés sur la plateforme de votre choix.
Notez que les applications générées dans cette exemple ne sont pas seulement un ensemble d’interfaces utilisateurs mais des applications complètement interactives partageant le même modèle, la même base de données et qu’elles sont 100% fonctionnelles.
Pour cet article, nous avons utilisé le modèle « ContactManager Sample Model » fournit par CodeFluent Entities.

Voici le modèle « ContactManager » en question :

Etant donné que nous avons déjà vu comment utiliser les producteurs fournis par CodeFluent Entities dans de précédents articles, nous allons directement présenter les interfaces utilisateurs générées sans s’attarder sur leurs configurations.
Interface utilisateur générée en utilisant le Windows 8 Store Producer :
La page d’accueil générée par défaut, liste tous les espaces de noms et les entités qu’ils contiennent :

Cliquer sur une entité vous emmène sur la page de l’entité en question.
Sur cette page vous trouverez une capture de l’entité depuis laquelle cette page a été générée.
En faisant un clic droit ou en utilisant le raccourci « Ctrl+Z » un menu contenant la liste des actions disponibles pour cette entité apparait en bas de l’écran. Ces actions correspondent aux méthodes métier fournies par l’entité.

L’écran suivant est l’écran affiché pour l’entité « Contact » lorsque l’on clique sur le bouton « LoadAll » puis en sélectionnant un des contacts de la liste se trouvant sur la gauche.

Clic droit ou « Ctrl+Z » fera de nouveau apparaitre un menu en bas de l’écran qui permettra de créer, modifier ou supprimer une entrée.

Voici par exemple l’écran d’édition qui apparait après avoir cliqué sur le bouton « Edit » :

Interface utilisateur générée en utilisant l’ASP.NET MVC Producer :
La page d’accueil générée par défaut, liste tous les espaces de noms et les entités qu’ils contiennent :

Cliquer sur une entité vous emmène sur la page de l’entité en question.
Sur cette page vous trouverez une capture de l’entité depuis laquelle cette page a été générée.
Sur la partie gauche de la page se trouve un menu contenant la liste des actions disponibles pour cette entité. Ces actions correspondent aux méthodes métier fournies par l’entité :

L’écran suivant est l’écran affiché pour l’entité « Contact » lorsque l’on clique sur le bouton « LoadAll ». Cet écran liste tous les contacts grâce à une table HTML et permet de les trier. Depuis cette page vous pouvez détailler, éditer ou supprimer un contact.

Cliquer sur le lien « Details » permet d’afficher l’écran suivant :

Cliquer sur le lien « Edit » permet d’éditer le contact choisit :

Interface utilisateur générée en utilisant l’ASP.NET AJAX Producer :
La page d’accueil générée par défaut, liste tous les espaces de noms et les entités qu’ils contiennent :

Cliquer sur une entité vous emmène sur la page de l’entité en question.
Sur cette page vous trouverez une capture de l’entité depuis laquelle cette page a été générée.
Sur la partie gauche de la page se trouve un menu contenant la liste des actions disponibles pour cette entité. Ces actions correspondent aux méthodes métier fournies par l’entité :

L’écran suivant est l’écran affiché pour l’entité « Contact » lorsque l’on clique sur le bouton « LoadAll ».
Cet écran liste tous les contacts grâce à une grille Ajax supportant le tri et la pagination. Depuis cette page vous pouvez détailler, éditer ou supprimer un contact.

Cliquer sur le bouton « Edit » permet d’éditer le contact choisit :

Interface utilisateur générée en utilisant l’ASP.NET WebForms Producer :
La page d’accueil générée par défaut, liste tous les espaces de noms et les entités qu’ils contiennent :

Cliquer sur une entité vous emmène sur la page de l’entité en question.
Sur cette page vous trouverez une capture de l’entité depuis laquelle cette page a été générée.
Sur la partie gauche de la page se trouve un menu contenant la liste des actions disponibles pour cette entité. Ces actions correspondent aux méthodes métier fournies par l’entité :

L’écran suivant est l’écran affiché pour l’entité « Contact » lorsque l’on clique sur le bouton « LoadAll ». Cet écran liste tous les contacts grâce à une table HTML et permet de les trier. Depuis cette page vous pouvez éditer ou supprimer un contact.

Cliquer sur le bouton « Edit » permet d’éditer le contact choisit :

Interface utilisateur générée en utilisant le Smart Client (WPF) Producer :
Le premier écran généré par défaut liste tous les espaces de noms et les entités qu’ils contiennent :

Cliquer sur une entité charge toute les données correspondantes, ici l’entité « Contact ». Depuis cet écran, vous pouvez créer éditer ou supprimer un contact.

Cliquer sur un contact permet d’ouvrir une nouvelle fenêtre permettant de l’éditer.

Interface utilisateur générée en utilisant le SharePoint WebParts Producer :
La page d’accueil générée par défaut, liste tous les espaces de noms :

Cliquer sur un espace de nom liste toutes ses entités :

Cliquer sur une entité charge la page d’entité, ici l’entité « Contact ». Cet écran liste tous les contacts grâce à une WebPart. Depuis cette page vous pouvez créer, détailler, éditer ou supprimer un contact.

Cliquer sur un contact permet d’en afficher le détail :

Cliquer sur le bouton « Edit » permet d’afficher l’éditeur :

Comme vous pouvez le voir, à partir d’un seul et même modèle nous avons pu généré des interfaces utilisateurs à la fois différentes et consistantes.
Ajoutons que grâce au Platform Independent Form Editor il est aussi possible de définir directement un formulaire basé sur une entité. Celui ci sera ensuite transformés en écrans par les producteurs d’interfaces utilisateurs. Vous trouverez plus d’information dans cette article (Anglais).
Enfin, dans le cas où vous ne trouveriez pas le producteur répondant à vos besoins, souvenez vous que vous pouvez créer votre propre template et l’utiliser avec le Template Producer ou même créer votre propre producteur.
Pour résumer, CodeFluent Entities est capable de générer des application 100% fonctionnelles avec les interfaces utilisateurs de votre choix grace à sa logique de “producteurs”.