|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre régulier
![]() Inscription : avril 2006 Messages : 204 ![]() |
Bonjour,
ASP.NET MVC - RAZOR - C# un soucis sur l'édition de ma list<company> J'ai une classe company et companyA et companyB qui spécialise company Dans mon controller je charge une list<company> qui reçoit des companyA et des companyB. Dans ma vue j'édite ma liste et lorsque je sauvegarde et que je me retrouve dans mon action, toutes les companyA et companyB sont de type company et je ne sais plus où est ce que je dois enregistrer mes compagnies car les companyA et companyB s'enregistre dans des bases différentes.... Merci beaucoup pour votre précieuse aide |
|
|
00
|
|
|
#2 |
|
Membre du Club
![]() Nadine MDéveloppeur Web Inscription : octobre 2012 Messages : 88 ![]() |
Salut,
Déjà tu pourrais être plus clair dans la notion de liste... Tu parles d'un select ? D'une Table ? Peu importe l'enveloppe, tu te débrouilleras : Tu ajoutes un champ à ton modèle qui s'appelle typecompagnie Tu ajoutes un hiddenfor à ta vue pour que le type de compagnie de sortes que lorsque tu postes ta réponse, coté serveur elle puisse être identifée par rapport à ce champ. Dans ton contrôlleur lorsque tu récupères ta ligne de type compagnie dans la variable model, tu testes le champ typecompagnie. Si typecompagnie = A alors compagnieA MaCompagnieA = (compagnieA)model; compagnieA.Sauve(); //méthode d'exention adaptée à compagnieA. Si typecompagnie = B alors compagnieB MaCompagnieB = (compagnieB)model; compagnieB.Sauve(); //méthode d'exention adaptée à compagnieB. Tu peux faire ça de plein de façons avec des interfaces, une classe abstraite, des vieux if à l'ancienne.... Merci de me dire si ça t'aide @+ SauveCompagnie(compagnieA comp); Si typecompagnie = B tu appelles SauveCompagnie(compagnieB comp); Ensuite tu codes ton truc à l'intérieur en sauvant dans la bonne base et en factorisant comme il faut. |
|
|
10
|
|
|
#3 | ||
|
Membre à l'essai
![]() Inscription : octobre 2007 Messages : 84 ![]() |
Bonsoir,
Il me semble qu'il suffit de tester le type de ta classe avec l'opérateur "is". Code :
|
||
|
|
00
|
Copyright © 2000-2013 - www.developpez.com