当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > asp.net中一次更新DATAGRID中所有记录

ASP.NET
C#中使Datawindow.Net组件处理数据
在.net开发中几个重要的认识误区(1)
WML教程11:文本框控件(Input)
WML教程6:动作和链接
在WEB自定义控件中实现事件及自动保存值
WML教程14:WML 文本处理
表单启动太慢时显示一个等待图标(类似Windows下的时间沙漏)
ADO.NET学习笔记(二)
使用HttpContext中的User属性来实现用户身份验证之用户验证票篇
由DataGrid翻页所导致的诸多问题的解决方案
动态加载类的原理:元数据的使用
用C#实现Des加密和解密
快速对图片进行滤光处理
可以代替窗体Refresh方法的函数
『原创』适合初学的简单3D碰撞检测初探(对于3D编程初学人员)
《Essential .Net》读书笔记 - Chapter 3
Lion.Web.WebHtmlEditor 1.0 Hack 攻略
数据库事务处理的另外一种方法
[WSE]Web Service—后台侦听服务通过WSE2.0建立订阅/发布关系
给windows服务添加描述

ASP.NET 中的 asp.net中一次更新DATAGRID中所有记录


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 117 ::
收藏到网摘: n/a

在asp.net中,如何一次性更新datagrid中的所有记录呢?可以用如下的方法,首先,
要对DATAGRID中要更新的列建立模版列,比如:


asp:datagridid="dgPopularFAQs"runat="server"
AutoGenerateColumns="False"
...>
<Columns>
<asp:BoundColumnDataField="FAQID"ItemStyle-Width="10%"
ItemStyle-HorizontalAlign="Center"HeaderText="FAQID"/>

<asp:BoundColumnDataField="CategoryName"HeaderText="Category"/>

<asp:TemplateColumnHeaderText="Question">
<ItemTemplate>
<asp:TextBoxrunat="server"id="txtDescription"Columns="75"
Text='<%#Container.DataItem("Description")%>'/>
</ItemTemplate>
</asp:TemplateColumn>

<asp:TemplateColumnHeaderText="SubmittedBy">
<ItemTemplate>
<asp:TextBoxrunat="server"id="txtSubmittedBy"
Text='<%#Container.DataItem("SubmittedByName")%>'/>
</ItemTemplate>
</asp:TemplateColumn>

</Columns>
</asp:datagrid>
之后,对DATAGRID进行一次遍历,
DimmyConnectionasNewSqlConnection(connectionstring)
DimmyCommandasNewSqlCommand(strSQL,myConnection)

DimdgiasDataGridItem
ForEachdgiindgPopularFAQs.Items
'ReadinthePrimaryKeyField
DimidasInteger=Convert.ToInt32(dgPopularFAQs.DataKeys(dgi.ItemIndex))
DimquestionasString=CType(dgi.FindControl("txtDescription"),TextBox).Text
DimsubmittedByasString=CType(dgi.FindControl("txtSubmittedBy"),TextBox).Text

'IssueanUPDATEstatement...
DimupdateSQLasString="UPDATETableNameSETQuestion=@Question,"&_
"SubmittedByName=@SubmittedByNameWHEREFAQID=@ID"
myCommand.Parameters.Clear()
myCommand.Parameters.Add("@Question",question)
myCommand.Parameters.Add("@SubmittedByName",submittedBy)

myCommand.ExecuteNonQuery()
Next