Bonjour,
Suite à un précédent poste, j'ai compris un peu mieux le fonctionnement des Dataset, DataAdapter, SQLCommandBuilder et j'en passe ...
Mon code est le suivant:
Avec ce code, je visualise mes données et je peux modifier les données sous-jacentes par la commande update.
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
35
36
37
38
39
40 private void button1_Click(object sender, EventArgs e) { try { sqlConnection1.ConnectionString = "Data Source=.\\SQLEXPRESS;Initial Catalog=\"MABASE\";Integrated Security=True;Connect Timeout=30;User Instance=False;Context Connection=False"; sdaPhotos = new SqlDataAdapter("SELECT * FROM PHOTOS", sqlConnection1); monDataSet.Tables.Add("Photos"); sdaPhotos.Fill(monDataSet.Tables["Photos"]); sdaProduits = new SqlDataAdapter("SELECT * FROM PRODUITS", sqlConnection1); monDataSet.Tables.Add("Produits"); sdaProduits.Fill(monDataSet.Tables["Produits"]); sdaProduits.TableMappings.Add("Table", "Photos"); sdaPhotos.TableMappings.Add("Table", "Produits"); SqlCommandBuilder builderPhotos = new SqlCommandBuilder(); SqlCommandBuilder builderProduits = new SqlCommandBuilder(); builderPhotos.DataAdapter = sdaPhotos; builderProduits.DataAdapter = sdaProduits; dataGridView1.DataSource = monDataSet.Tables[0]; dataGridView2.DataSource = monDataSet.Tables[1]; } catch (Exception exc) { MessageBox.Show(exc.Message); } } private void btnValider_Click(object sender, EventArgs e) { sdaPhotos.Update(monDataSet.Tables["Photos"]); sdaProduits.Update(monDataSet.Tables["Produits"]); }
Et là me vient une question :
Quand j'utilise les assistants de VS, je retrouve sur mon formulaire un BindingSource.
Avec mon code, sans BindingSource, ça fonctionne tout aussi bien.
Donc, à quoi sert le BindingSource créé automatiquement par VS ?
Papy !
Partager