绑定数据 LinkButton 用法
<asp:Repeater runat="server" ID="RepAdm" OnItemCommand="RepAdm_ItemCommand" >
<ItemTemplate>
<tr>
<td><%# DataBinder.Eval(Container.DataItem,"Id") %></td>
<td><%# Eval("Title") %></td>
<td><%# Eval("KeyWords") %></td>
<td><%# Eval("Content") %></td>
<td><%# Eval("Author") %></td>
<td><%# Eval("DateTime") %></td>
<td>
<asp:LinkButton ID="btnEdit" Text="修改" runat="server" CommandArgument='<%# Eval("Id") %>' CommandName="Edit" ></asp:LinkButton>
<asp:LinkButton ID="btnDelete" Text="删除" runat="server" CommandArgument='<%# Eval("Id") %>' CommandName="Delete" OnClientClick="return confirm('确定删除?')"></asp:LinkButton>
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
后台
protected void RepAdm_ItemCommand(object sourse,RepeaterCommandEventArgs e)
{
Dictionary<string,object> dictSearch = new Dictionary<string,object>();
try {
switch (e.CommandName)
{
//如果点击删除
case "Delete":
using (SqlConnection conn = new SqlConnection(connectionStr))
{
conn.Open();
using (SqlCommand cmd = new SqlCommand("delete from News where Id=@Id;", conn))
{
cmd.Parameters.AddWithValue("@Id", e.CommandArgument);
cmd.ExecuteNonQuery();
SetBind();
}
}
break;
//如果点击修改
case "Edit":
//将参数存入字典中
dictSearch.Add("@Id", e.CommandArgument.ToString());
Session["TransferData"] = dictSearch;
Response.Redirect("AdminNewsAdd.aspx?Id=" + dictSearch["@Id"].ToString());
break;
default:
break;
}
}
catch(Exception ex){
throw ex;
}
}
#endregion
private void SetBind()
{
DataSet ds = new DataSet();
using(SqlConnection conn = new SqlConnection(connectionStr))
{
SqlDataAdapter adapter = new SqlDataAdapter("select * from News",conn);
adapter.Fill(ds);
}
RepAdm.DataSource = ds;
RepAdm.DataBind();
}