Bonjour,
J'essaie de migrer une application .NET 1.1 vers .NET 2.0 et j'ai été surpris par une Exception de type EvaluateException qui a été déclenchée lors d'une copie d'un DataTable un peu particulier certes...
Je m'explique :
J'ai un DataSet ds qui contient un DataTable nommé "matable". Je crée un DataRelation (relation parent/enfant) avec deux DataColumn d'un même DataTable. J'ajoute à la collection Relation de mon DataSet, le DataRelation ainsi créé :
J'ajoute une colonne à mon DataTable en effectuant une moyenne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 DataRelation relation; DataColumn parent = ds.Tables["matable"].Columns["code"]; DataColumn enfant = ds.Tables["matable"].Columns["codeParent"]; relation = new DataRelation("maRelation", parent, enfant); ds.Relations.Add(relation);
Jusqu'ici tout ce passe bien en 1.1 et en 2.0.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 DataColumn col = new DataColumn("nvcol", Type.GetType("System.Decimal"), "Avg(child(maRelation).code)"); ds.Tables["matable"].Columns.Add(col);
Par contre si je crée un nouvau DataTable à partir du DataTable précédent en utilisant la méthode Copy, une EvaluateException est lancée en 2.0 alors qu'en 1.1 çà fonctionne !
Si quelqu'un a déjà été confronté à un problème similaire...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 DataTable tmp = ds.Table["matable"].Copy();
Merci de votre aide.
Partager