J'ai une collectionC# DataTable: Ajouter une nouvelle ligne lance erreur en utilisant le terrain AutoInc
List<Employee> employees;
-je utiliser un DataTable et charger tous les enregistrements (de la table MDB) lorsque Form1.Loads et ajouter ces enregistrements à la liste (collection) donc je travaille avec eux en mémoire.
Maintenant, quand j'ajoute un nouvel employé à la collecte, je dois ajouter aussi à la table mdb ... donc je fais:
DataRow rowemployee = Program.tblEmployee.NewRow();
rowemployee["name"] = tb_Name.Text;
rowemployee["address"] = tb_Address.Text;
//...all the other fields
Program.tblEmployee.AddRow(rowemployee);
L'IDE génère une erreur concernant la colonne « id » doit n'a pas de valeur nulle ou ne doit pas être vide.
Comme la table mdb a une colonne id, tapez number, autoinc, comment dois-je réparer la classe Employee et les méthodes DataTable/Collections, de sorte que la colonne id est "ignorée" lors de l'ajout de nouvelles lignes?
Merci
OMFG ... c'est l'enfer! !! Je ne vais pas faire tout ça pour pouvoir ajouter un enregistrement à la table sans avoir de problèmes avec le champ id dans le tableau Je suppose que je vais utiliser la manière automatique – Enrique
Ce n'est vraiment pas si mal. Il n'y a que trois choses à faire: configurer l'incrémentation automatique, mettre à jour l'ID après une insertion, et configurer votre DataRelations pour mettre en cascade les mises à jour - et vous n'avez qu'à faire la troisième chose si votre table participe aux relations. –