Bonjour
Actuellement, je remplit les DataTables de mon DataSet via la méthode .Fill() des Table Adapters associés à la connection vers une BDD Access.
Comme on le voit ce code est bien répétitif... J'essaie donc de réduire toutes ces lignes en une seule boucle dans le genre :
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
24
25
26
27
28
29
30
31
32
33
34 Me.FoodTableAdapter.Fill(Me.DataSet.Food) Me.WeaponTableAdapter.Fill(Me.DataSet.Weapon) Me.AmmoTableAdapter.Fill(Me.DataSet.Ammo) Me.RangedTableAdapter.Fill(Me.DataSet.Ranged) Me.HeadTableAdapter.Fill(Me.DataSet.Head) Me.HP_ScalingTableAdapter.Fill(Me.DataSet.HP_Scaling) Me.NeckTableAdapter.Fill(Me.DataSet.Neck) Me.HandsTableAdapter.Fill(Me.DataSet.Hands) Me.BodyTableAdapter.Fill(Me.DataSet.Body) Me.RingTableAdapter.Fill(Me.DataSet.Ring) Me.EarTableAdapter.Fill(Me.DataSet.Ear) Me.WaistTableAdapter.Fill(Me.DataSet.Waist) Me.BackTableAdapter.Fill(Me.DataSet.Back) Me.LegsTableAdapter.Fill(Me.DataSet.Legs) Me.FeetTableAdapter.Fill(Me.DataSet.Feet) Me.Damage_TypesTableAdapter.Fill(Me.DataSet.Damage_Types) Me.Skills_ListTableAdapter.Fill(Me.DataSet.Skills_List) Me.Jobs_ListTableAdapter.Fill(Me.DataSet.Jobs_List) Me.BLU_SpellsTableAdapter.Fill(Me.DataSet.BLU_Spells) Me.BLU_Job_TraitsTableAdapter.Fill(Me.DataSet.BLU_Job_Traits) Me.AreasTableAdapter.Fill(Me.DataSet.Areas) Me.EnemiesTableAdapter.Fill(Me.DataSet.Enemies) Me.BuffsTableAdapter.Fill(Me.DataSet.Buffs) Me.EnfeebsTableAdapter.Fill(Me.DataSet.Enfeebs) Me.Job_AbilitiesTableAdapter.Fill(Me.DataSet.Job_Abilities) Me.Job_StatSkill_GradesTableAdapter.Fill(Me.DataSet.Job_StatSkill_Grades) Me.Job_TraitsTableAdapter.Fill(Me.DataSet.Job_Traits) Me.Mob_DataTableAdapter.Fill(Me.DataSet.Mob_Data) Me.Race_Stat_GradesTableAdapter.Fill(Me.DataSet.Race_Stat_Grades) Me.Skill_CapsTableAdapter.Fill(Me.DataSet.Skill_Caps) Me.Stat_ScalingTableAdapter.Fill(Me.DataSet.Stat_Scaling) Me.Stats_ListTableAdapter.Fill(Me.DataSet.Stats_List) Me.WS_AvailabilityTableAdapter.Fill(Me.DataSet.WS_Availability) Me.WS_TableTableAdapter.Fill(Me.DataSet.WS_Table)
...mais je n'y arrive pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 For Each dt As DataTable In Me.DataSet.Tables For Each ta In DataSetTableAdapters ' cet espace de noms contient exactement tous les noms de mes TableAdapters, mais ne peut pas être utilisé après "In"... If Replace(ta.ToString, "TableAdapter", "") = dt.ToString Then ta.Fill(dt) End If Next Next
ou encore dans le sens inverse du code suivant:
Malheureusement la méthode .FillAll() n'existe pas...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 If Me.DataSet.HasChanges Then 'Appliquer les changements dans la base de données Me.TableAdapterManager.UpdateAll(Me.DataSet) End If
Quelqu'un saurait-il la bonne syntaxe à employer ? Merci.
Partager