J'insère un formulaire Web dans la base de données et j'utilise donc des requêtes paramétrées. J'ai une CheckBoxList. Comment puis-je itérer sur CheckBoxList, créer une instruction d'insertion pour chaque chose vérifiée (many-to-many), et garder ceci paramétré et exécuté d'un seul coup?Requêtes paramétrées sur l'itération
Je possède ce moment:
string query = "INSERT INTO resources (url, submitted_by, author_name) VALUES (@url, @submitted_by, @author_name);";
foreach (ListItem li in CheckBoxList1.Items)
{
if (li.Selected = true)
{
query += "; INSERT INTO ";
}
}
SqlCommand cmd = new SqlCommand(query, conn);
cmd.Parameters.AddWithValue("@url", TextBox1.Text);
cmd.Parameters.AddWithValue("@submitted_by", TextBox2.Text);
cmd.Parameters.AddWithValue("@author_name", TextBox3.Text);
try
{
conn.Open();
cmd.ExecuteNonQuery();
Label1.Text = "Added to database.";
}
Comme vous pouvez le voir est inachevé. Aucune suggestion?
Chaque article coché doit générer un insert pour un ensemble de 'url, submitted, author'? – tzaman
@tzaman: Non, chaque item coché aurait besoin de créer une instruction INSERT comme ceci: 'INSERT INTO phones_resources (phone_id, resource_id) VALUES (@ phone_id, @resource_id);'. – jeffcook2150
Ok. Donc, étant donné un 'ListItem', obtenez-vous le' phone_id, resource_id' associé? – tzaman