asp.net에서 DataGrid의 모든 레코드를 한 번에 업데이트하는 방법은 무엇입니까? 먼저 다음 방법을 사용할 수 있습니다.
DATAGRID에서 업데이트할 열에 대한 템플릿 열을 만듭니다. 예를 들면 다음과 같습니다.
asp:datagrid id="dgPopularFAQs" runat="서버"
AutoGenerateColumns="거짓"
...>
<열>
<asp:BoundColumn DataField="FAQID" ItemStyle-Width="10%"
ItemStyle-HorizontalAlign="Center" HeaderText="FAQ ID" />
<asp:BoundColumn DataField="CategoryName" HeaderText="Category" />
<asp:TemplateColumn HeaderText="질문">
<항목 템플릿>
<asp:TextBox runat="서버" id="txtDescription" 열="75"
Text='<%# Container.DataItem("Description") %>' />
</ItemTemplate>
</asp:템플릿열>
<asp:TemplateColumn HeaderText="제출자">
<항목 템플릿>
<asp:TextBox runat="서버" id="txtSubmittedBy"
Text='<%# Container.DataItem("SubmittedByName") %>' />
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:데이터그리드>
그 후 DATAGRID 순회를 수행하고,
Dim myConnection을 새 SqlConnection(연결 문자열)으로 사용
Dim myCommand를 새 SqlCommand(strSQL, myConnection)로
Dim dgi를 DataGridItem으로 지정
dgPopularFAQs.Items의 각 dgi에 대해
'기본 키 필드에서 읽기
정수형의 Dim ID = Convert.ToInt32(dgPopularFAQs.DataKeys(dgi.ItemIndex))
String = CType(dgi.FindControl("txtDescription"), TextBox).Text로 희미한 질문
Dim submitBy as String = CType(dgi.FindControl("txtSubmittedBy"), TextBox).Text
'UPDATE 문을 발행합니다...
Dim updateSQL as String = "UPDATE TableName SET 질문 = @Question, " & _
"SubmittedByName = @SubmittedByName WHERE FAQID = @ID"
myCommand.Parameters.Clear()
myCommand.Parameters.Add("@Question", 질문)
myCommand.Parameters.Add("@SubmittedByName", submitBy)
myCommand.ExecuteNonQuery()
다음