Dans asp.net, comment mettre à jour tous les enregistrements de la grille de données en même temps ? Vous pouvez d'abord utiliser la méthode suivante,
Créez une colonne modèle pour la colonne à mettre à jour dans DATAGRID, par exemple :
asp: datagrid id = "dgPopularFAQs" runat = "serveur"
AutoGenerateColumns="False"
...>
<Colonnes>
<asp:BoundColumn DataField="FAQID" ItemStyle-Width="10%"
ItemStyle-HorizontalAlign="Center" HeaderText="ID FAQ" />
<asp:BoundColumn DataField="CategoryName" HeaderText="Category" />
<asp:TemplateColumn HeaderText="Question">
<Modèle d'élément>
<asp:TextBox runat="server" id="txtDescription" Columns="75"
Text='<%# Container.DataItem("Description") %>' />
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="Soumis par">
<Modèle d'élément>
<asp:TextBox runat="server" id="txtSubownedBy"
Text='<%# Container.DataItem("SubownedByName") %>' />
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:grille de données>
Après cela, effectuez un parcours de DATAGRID,
Dim myConnection en tant que New SqlConnection (chaîne de connexion)
Dim myCommand as New SqlCommand (strSQL, myConnection)
Dim dgi as DataGridItem
Pour chaque dgi dans dgPopularFAQs.Items
'Lire dans le champ Clé primaire
Dim id comme Integer = Convert.ToInt32(dgPopularFAQs.DataKeys(dgi.ItemIndex))
Faible question sous la forme String = CType(dgi.FindControl("txtDescription"), TextBox).Text
Dim submitBy as String = CType(dgi.FindControl("txtSubownedBy"), TextBox).Text
'Émettez une instruction UPDATE...
Dim updateSQL as String = "UPDATE TableName SET Question = @Question, " & _
"SubmitByName = @SubmitteByName OÙ FAQID = @ID"
maCommand.Parameters.Clear()
maCommand.Parameters.Add("@Question", question)
maCommand.Parameters.Add("@SubmitteByName", soumisBy)
maCommand.ExecuteNonQuery()
Suivant