J'ai besoin de conseils...
J'ai trois classes :
Tiers, PersonnesPhysiques, PersonnesMorales
PersonnesPhysiques et PersonnesMorales héritent de Tiers ...logique ...
En simplifié :
Propriétes de tiers : IdTiers et NomTiers
Propriétés de PersonnesPhysiques : IdPersonnesPhysiques; Prénom
Propriétés de PersonnesMorales : IdPersonnesMorales; FormeJuridique
D’un point de vue base de donnée (SQL serveur) j’ai trois tables du même nom, j’ai IdTiers comme clef étrangère dans PersonnesMorales et PersonnesPhysique ….Classique
J’essaye de développer en couches …A savoir une couche métier() BLL et une couche d’accès aux données (DAL).
J’ai mon Objet métier Tiers et mon Objet d’accès aux donnée TiersDAL . Dans mon objet TiersDAL j’ai une méthode :
Dans ma table Tiers , IdTiers, qui est l’identifiant est un champ compteur à incrémentation automatique.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 public bool AjouterTiers(Tiers NewTiers) { try { string SQL; SQL = "INSERT INTO TIETiers "; SQL += "(Nom, IdOperateur) "; SQL += "Values("; SQL += "'" + NewTiers.Nom.Replace("'", "''") + "'"; SQL += "," + NewTiers.IdOperateurTiers + ""; SQL += ")"; BaseDeDonnees.ExecuteRequete(SQL); return true; } catch (Exception Erreur) { throw Erreur; } }
Dans la même logique , J’ai un objet métier PersonnePhysique et mon Objet d’accès aux donnée PersonnePhysique DAL . Dans mon objet PersonnePhysiqueDAL j’ai une méthode :
Dans ma logique de base de données je dois en premier lieu créer un tiers , récupérer son identifiant pour le mettre dans l’enregistrement de la personne physique. Mon problème et que je ne sais pas comment organiser mes classes, mes méthodes et mes couches pour faire ceci ….
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 public bool Ajouter PersonnePhysique ( PersonnePhysique New PersonnePhysique) { try { string SQL; SQL = "INSERT INTO TIEPersonnePhysique "; SQL += "(IdTiers, Prenom) "; SQL += "Values("; SQL += "'" + New PersonnePhysique.Prenom.Replace("'", "''") + "'"; SQL += "," + New PersonnePhysique.IdTiers + ""; SQL += ")"; BaseDeDonnees.ExecuteRequete(SQL); return true; } catch (Exception Erreur) { throw Erreur; } }
Si un expert en la matière pouvait m’aider ..ce serrai tip top
Merci d’avance
Patrick
Partager