Evidemment tu ne vois aucun problème pour ajouter dans la base de données des objets liés, puisque ce n'est pas là qu'il est. Le problème, c'est le comment on fait pour créer dynamiquement des enfants en nombre inconnu (voir question originale) et les INSERER EN UNE FOIS.... A ma connaissance, il n'est pas possible de garder en mémoire coté client des objets créés, attendre que la fiche parent soit elle aussi renseignée, et envoyer le tout;
Il faut donc pouvoir entrer les enfants ligne par ligne AVANT que la fiche parent ne soit validée, sinon c'est, comme dit au tout début de cette conversation, 2 opérations distinctes. (en fait c'est bien ce qu'il faut faire, mais en utilisant ajax dans une grille pour les enfants, de manière à ce que cela est "l'air" d'être une même opération).
Utiliser un tableau de dimension fixe est hors de question si on veut faire un travail propre, ce ne serait que du mauvais bricolage.
Je n'ai jamais parlé "d'impossibilité", simplement dit que ce n'est pas aussi simple que cela en a l'air.
Par ailleurs, et sur le plan purement base de données, une simple relation parents/enfants pour ce type de cas me parait plutot simpliste, justement. Il semblerait en effet logique d'envisager qu'un assuré puisse avoir son conjoint (et vice-versa) comme bénéficiaire, ce qui implique une relation récursive, un "parent" devrait aussi pouvoir être "enfant". Dans ce cas, il est encore plus clair qu'un tableau fixe serait une absurdité.
Je dis et je répète, problème interessant parce que pas si simple qu'il en a l'air.
Maintenant, on peut toujours s'en débarrasser vite fait mal fait en faisant un tableau de longueur délimitée et ne pas se soucier d'autre chose. Occasion perdue de faire du bon travail.
Ce que j'aimerais voir comme code, puisqu'on est la pour apprendre, c'est celui de la méthode "public ActionResult Create()", celle qui génère la vue, et la vue elle-même, bien sûr, remplissant les conditions ci-dessus. En tous cas, si j'étais l'étudiante qui a posé la question, c'est ce que j'aimerais apprendre.
Et si j'avais un projet comportant ce genre de demande, ce que j'ai expliqué ci-dessus est la manière dont je réaliserais cette fonctionalité.
Partager