批量处理GridView中的数据
页面代码
<asp:GridView ID="gvw_Task" runat="server" AutoGenerateColumns="False" Width="772px">
<Columns>
<asp:TemplateField HeaderText="任务类型">
<ItemTemplate><%# TurnTaskType(Eval("TaskType").ToString())%></ItemTemplate>
<ItemStyle HorizontalAlign="Center" />
</asp:TemplateField>
<asp:BoundField HeaderText="姓名" DataField="PatientName" />
<asp:BoundField HeaderText="办事处" DataField="Office" />
<asp:TemplateField HeaderText="处理日期">
<ItemTemplate><%# TurnDataTime(Eval("ProcessDate").ToString())%></ItemTemplate>
<ItemStyle HorizontalAlign="Center" />
</asp:TemplateField>
<asp:TemplateField HeaderText="处理状态">
<ItemTemplate><%# TurnProcessState(Eval("ProcessState").ToString())%></ItemTemplate>
<ItemStyle HorizontalAlign="Center" />
</asp:TemplateField>
<asp:TemplateField HeaderText="负责人">
<ItemTemplate>
<asp:HiddenField ID="hfd_TaskIDs" Value='<%#Eval("TaskID").ToString()%>' runat="server" />
<asp:DropDownList ID="ddl_User" runat="server" DataSourceID="SqlDataSource1" DataTextField="Name" DataValueField="Name">
</asp:DropDownList><asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="Data Source=192.168.1.160;Initial Catalog=PPMS;Persist Security Info=True;User ID=chanceinfo;Password=123"
ProviderName="System.Data.SqlClient" SelectCommand="SELECT [Name] FROM [TB_USERS] WHERE ([IsActive] = @IsActive)">
<SelectParameters>
<asp:Parameter DefaultValue="1" Name="IsActive" Type="Int32" />
</SelectParameters>
</asp:SqlDataSource>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField HeaderText="内容" DataField="Content" />
<asp:TemplateField HeaderText="任务属性">
<ItemTemplate><%# TurnCallType(Eval("TaskState").ToString())%></ItemTemplate>
<ItemStyle HorizontalAlign="Center" />
</asp:TemplateField>
<asp:TemplateField HeaderText="取消">
<ItemTemplate>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<FooterStyle CssClass="GridViewFooterStyle" />
<RowStyle CssClass="GridViewRowStyle" />
<PagerStyle CssClass="GridViewPagerStyle" />
<HeaderStyle CssClass="GridViewHeaderStyle" />
</asp:GridView>
代码处理部分
protected void btn_Save_Click(object sender, EventArgs e)
{
foreach (GridViewRow item in gvw_Task.Rows)
{
HiddenField TaskID = (HiddenField)item.FindControl("hfd_TaskIDs"); //声明隐藏域变量用来接受gvw中对应的隐藏域变量,接受时候使用类型转换语句
DropDownList User = (DropDownList)item.FindControl("ddl_User"); //原理同上
string LoginName = User.SelectedValue.ToString();
string Task = TaskID.Value.ToString();
string sql = "select Operator from TB_TASK where TaskID='" + PublicClass.SqlFix(Task) + "'";
DbCommand dbCommand = db.GetSqlStringCommand(sql);
DataSet ds = db.ExecuteDataSet(dbCommand);
DataTable dt = ds.Tables[0];
//判断是否修改
if (LoginName + "" != dt.Rows[0]["Operator"].ToString())
{
sql = "update TB_TASK set Operator='" + PublicClass.SqlFix(LoginName) + "' where TaskID='" + PublicClass.SqlFix(Task) + "'";
da.UpdateProvince(sql);
}
}
Response.Write(CsPublicClass.getErrorPageCode("修改成功"));
}