Nous allons maintenant créer notre entité « Personne ». Le principe va être globalement le même que pour l’entité « Film », nous expliquerons donc cela plus rapidement que précédemment dans ce cours.
Créer une entité avec BCS
Si vous avez le moindre doute, n’hésitez pas à relire la méthode employée pour créer l’entité « Film ».
Retournez donc dans votre « BCS » et faites glisser une nouvelle entité que vous nommerez « Personne ». Ajoutez également un identificateur de type « System.Int32 » que vous nommerez « Id_personne ». Ajoutez ensuite une nouvelle méthode de type « Specific Finder ». Modifiez ensuite le « Type Descriptor » pour que celui-ci colle à la définition de la classe « Personne ». Au final, celui-ci devrait ressembler à ceci : voir figure 13.
Notez que le « Type descriptor Id » a sa propriété « Identifier » définit sur « Id_personne ». N’oubliez pas non plus de définir le « Type Name » du « Type Descriptor Personne » en le redirigeant vers la classe « Personne » de votre projet.
Créez ensuite une méthode de type « ReadList ». Modifiez sa propriété « Name » sur « AllPersonnes » et « Default Complete Name » sur « Toutes les personnes ».
Ouvrez ensuite la classe « DbPersonne » et ajoutez les clauses suivantes :
using System.Data;
using MySql.Data.MySqlClient;
Implémentez ensuite les deux fonctions suivantes :
public static List GetAllPersonnes()
{
List personnes = null;
using (DataSet dataSet = new DataSet())
{
using (MySqlConnection connection = new MySqlConnection(Helper.cString))
{
connection.Open();
using (MySqlDataAdapter adapter = new MySqlDataAdapter(« SELECT id_personne, nom, prenom, image FROM personnes », connection))
{
adapter.Fill(dataSet, « Personnes »);
}
}
if (dataSet.Tables[« Personnes »].Rows.Count == 0)
throw new Exception(« Aucune personne »);
personnes = new List(dataSet.Tables[« Personnes »].Rows.Count);
foreach (DataRow row in dataSet.Tables[« Personnes »].Rows)
{
personnes.Add(new Personne
{
Avatar = row[« image »].ToString(),
Id = int.Parse(row[« id_personne »].ToString()),
Nom = row[« nom »].ToString(),
Prenom = row[« prenom »].ToString()
});
}
}
return personnes;
}
public static Personne GetPersonneById(int id)
{
Personne personne = null;
using (DataSet dataSet = new DataSet())
{
using (MySqlConnection connection = new MySqlConnection(Helper.cString))
{
connection.Open();
using (MySqlDataAdapter adapter = new MySqlDataAdapter(« SELECT nom, prenom, image FROM personnes WHERE id_personne = » + id, connection))
{
adapter.Fill(dataSet, « Personne »);
}
}
if (dataSet.Tables[« Personne »].Rows.Count == 0)
throw new Exception(« Aucune personne »);
DataRow row = dataSet.Tables[« Personne »].Rows[0];
personne = new Personne
{
Avatar = row[« image »].ToString(),
Id = id,
Nom = row[« nom »].ToString(),
Prenom = row[« prenom »].ToString()
};
}
return personne;
}
Ces fonctions utilisent la même logique que les fonctions utilisées pour récupérer les films. Référez-vous donc à ces explications pour comprendre ces deux fonctions. Revenez maintenant sur votre « BCS », faites un clic droit sur la fonction « ReadItem » et sélectionnez « View Code ». Tapez alors :
return DbPersonne.GetPersonneById(id_personne);
Faites de même pour la fonction « AllPersonnes » et tapez :
return DbPersonne.GetAllPersonnes();
Vous pouvez maintenant déployer votre solution et refaire les mêmes étapes que précédemment. Ajoutez donc une « WebPart Business Data list » sur votre page, liez-la à l’entité que vous venez de créer, cachez la « Toolbar » ainsi que le « Chrome ». Enfin, modifiez les permissions de votre entités et actualisez votre page.
Téléchargez cette ressource
Guide de Cyber-résilience pour Microsoft 365
La violation de votre tenant M365 va au-delà d’un simple incident de cybersécurité. Elle peut entraîner une interruption opérationnelle généralisée, des perturbations commerciales et une exposition de vos données sensibles. Découvrez les méthodes et technologies pour évaluer, comparer et renforcer votre posture de sécurité Microsoft 365.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
- À l’aube de 2026, le SaaS entre dans une nouvelle phase
- Face à l’urgence écologique, l’IT doit faire sa révolution
- IoT et cybersécurité : les bases que chaque décideur doit maîtriser
Articles les + lus
CES 2026 : l’IA physique et la robotique redéfinissent le futur
Les 3 prédictions 2026 pour Java
Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
Face à l’urgence écologique, l’IT doit faire sa révolution
D’ici 2030, jusqu’à 90 % du code pourrait être écrit par l’IA, pour les jeunes développeurs, l’aventure ne fait que commencer
À la une de la chaîne Tech
- CES 2026 : l’IA physique et la robotique redéfinissent le futur
- Les 3 prédictions 2026 pour Java
- Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
- Face à l’urgence écologique, l’IT doit faire sa révolution
- D’ici 2030, jusqu’à 90 % du code pourrait être écrit par l’IA, pour les jeunes développeurs, l’aventure ne fait que commencer
