标签:linq 站点 fill 取数 命名空间 select edm 种类 http
数据源控件用于连接数据源、从数据源中读取数据以及把数据写入数据源。
使用数据源控件可以不用编写任何代码就可以实现页面的数据绑定。
.NET框架提供了如下几个数据源控件:
数据绑定控件可以绑定到数据源控件,利用数据源控件提供的数据实现包括排序、分页、更新、删除和插入等对数据的操作功能,也可以通过编写代码实现。
数据绑定控件通过DataSourceID属性连接到数据源控件。
常用的数据绑定控件有:
GridView控件的使用方式:
(1)通过任务编辑器操作GridView控件
(2)通过代码操作GridView控件
【例】通过代码操作GridView控件,实现数据的显示、删除、更新和分页功能。
-----【显示功能】
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; //引入命名空间 using System.Data.SqlClient; //引入命名空间 using System.Configuration; //引入命名空间 public partial class _2 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if(!IsPostBack){ GetData(); } } protected void GetData() { SqlConnection con = new SqlConnection(); //定义数据库连接对象 con.ConnectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString; //定义数据库连接字符串 SqlCommand com = new SqlCommand(); //定义数据库操作命令对象 com.Connection = con; //连接数据库 com.CommandText = "select CustomerID,CompanyName,ContactName,ContactTitle,Address from Customers"; //定义执行查询操作的sql语句 SqlDataAdapter da = new SqlDataAdapter(); //创建数据适配器对象 da.SelectCommand = com; //执行数据库操作命令 DataSet ds = new DataSet(); //创建数据集对象 da.Fill(ds,"customers"); //填充数据集 GridView1.DataSource = ds.Tables["Customers"].DefaultView;//设置gridview控件的数据源为创建的数据集ds GridView1.DataBind(); //绑定数据库表中数据 } }
运行结果:
-----【分页功能】
设置相关属性。在源视窗中手动添加 AllowPaging="True" PageSize="8"
<asp:GridView ID="GridView1" runat="server" AllowPaging="True" PageSize="8" AutoGenerateColumns="False" onpageindexchanging="GridView1_PageIndexChanging" > <Columns> <asp:BoundField DataField="CustomerID" HeaderText="编号" /> <asp:BoundField DataField="CompanyName" HeaderText="公司名称" /> <asp:BoundField DataField="ContactName" HeaderText="联系人" /> <asp:BoundField DataField="ContactTitle" HeaderText="联系人头衔 " /> <asp:BoundField DataField="Address" HeaderText="地址" /> </Columns> </asp:GridView>
后台代码如下
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) { GridView1.PageIndex = e.NewPageIndex; GetData(); }
运行结果:
-----【选择、编辑、更新功能】
protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e) { GridView1.SelectedIndex = e.NewSelectedIndex; //实现选择功能 } protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) { GridView1.EditIndex = e.NewEditIndex; //实现编辑功能 GetData(); } protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) { GridView1.EditIndex = -1;//实现取消编辑功能 GetData(); } protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e) { string customerId=GridView1.DataKeys[e.RowIndex][0].ToString();//取出修改行的主键值 //取出修改后各字段的值 string companyName = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).ToString(); string contactName = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).ToString(); string address = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[3].Controls[0])).ToString(); string phone = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[4].Controls[0])).ToString(); //将用户更新的数据修改数据库 SqlConnection con = new SqlConnection(); //定义数据库连接对象 con.ConnectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString; //定义数据库连接字符串 SqlCommand com = new SqlCommand(); //定义数据库操作命令对象 com.Connection = con; //连接数据库 string sql = "update Customers set CompanyName=@companyName,ContactName=@contactName,Address =@address, Phone=@phone where CustomerId =@customerId "; con.Open(); SqlCommand cmd = new SqlCommand(sql, con); cmd.Parameters.AddWithValue("@companyName", companyName); cmd.Parameters.AddWithValue("@contactName", contactName); cmd.Parameters.AddWithValue("@address", address); cmd.Parameters.AddWithValue("@phone", phone); cmd.Parameters.AddWithValue("@customerId", customerId); com.CommandText = sql.ToString(); com.ExecuteNonQuery(); con.Close(); GridView1.EditIndex = -1; GetData(); }
-----【删除功能】
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) { string customerId = GridView1.DataKeys[e.RowIndex][0].ToString();//取出修改行的主键值 SqlConnection con = new SqlConnection(); //定义数据库连接对象 con.ConnectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString; //定义数据库连接字符串 SqlCommand com = new SqlCommand(); //定义数据库操作命令对象 com.Connection = con; //连接数据库 string sql = "delete from Customers where CustomerId=@customerId"; con.Open(); SqlCommand cmd = new SqlCommand(sql, con); com.Parameters.AddWithValue("@customerId", customerId); com.ExecuteNonQuery(); con.Close(); GridView1.EditIndex = -1; GetData(); }
标签:linq 站点 fill 取数 命名空间 select edm 种类 http
原文地址:http://www.cnblogs.com/yankyblogs/p/6901716.html