using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Configuration;
using System.Data.Linq;
namespace LinqTest
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
GetData();
}
}
LinqDataDataContext dc = new LinqDataDataContext(ConfigurationManager.ConnectionStrings["JMDAConnectionString"].ConnectionString);
/// <summary>
/// 使用LINQ查询整张表
/// </summary>
private void GetData()
{
var list = from g in dc.T_GRDA1
orderby g.Id
select g;
//使用下面的方法可以实现一个分布的效果
List<T_GRDA1> ArrayGrda = list.Skip(10 * (9 - 1)).Take(10).ToList();
List<T_GRDA1> ArrayGrda1 = list.ToList();
this.GridView1.DataSource = ArrayGrda1;
this.GridView1.DataBind();
}
/// <summary>
/// 使用LINQ添加数据
/// </summary>
protected void Button1_Click(object sender, EventArgs e)
{
GetUpdate();
Response.Write("<script>alert('添加成功!')</script>");
}
private void GetUpdate()
{
T_GRDA1 tr = new T_GRDA1();
tr.Name = txtName.Text;
tr.Mobile = txtMobile.Text;
tr.Address = txtAddress.Text;
tr.Id = txtId.Text;
dc.T_GRDA1.InsertOnSubmit(tr);
dc.SubmitChanges();
}
/// <summary>
/// 使用LINQ执行查询操作
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Button4_Click(object sender, EventArgs e)
{
var list = from g in dc.T_GRDA1
where g.Name.Contains( this.txtName .Text)
select g;
List<T_GRDA1> ArrayData = list.ToList();
this.GridView1.DataSource = ArrayData;
this.GridView1.DataBind();
}
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
/// <summary>
/// 使用LINQ执行修改
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
if (e.CommandName == "编辑")
{
T_GRDA1 grda = dc.T_GRDA1.Single(b=>b.Id==e.CommandArgument.ToString());
this.txtId.Text = grda.Id.ToString();
this.txtAddress.Text = grda.Address.ToString();
this.txtMobile.Text = grda.Mobile.ToString();
this.txtName.Text = grda.Name.ToString();
GetUpdate();
this.Response.Write("<script>alert('修改成功!')</script>");
}
/// <summary>
/// 使用LINQ执行删除
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
else if (e.CommandName == "删除")
{
T_GRDA1 grda = dc.T_GRDA1.Single(b => b.Id == e.CommandArgument.ToString());
dc.T_GRDA1.DeleteOnSubmit(grda);
dc.SubmitChanges();
GetData();
}
}
protected void Button2_Click(object sender, EventArgs e)
{
var list = from g in dc.T_GRDA1
group g by g.Lay into b
select new T_GRDA1 { Id=b.Key };
//foreach (var item in list)
//{
// string strId = item.Id;
//}
List<T_GRDA1> arrayGrda = list.ToList();
this.GridView1.DataSource = arrayGrda;
this.GridView1.DataBind();
}
private List<T_GRDA1> getDataList()
{
var list = from g in dc.T_GRDA1
select g;
return list.ToList();
}
}
}