1、新建一个网站或者项目
2、添加新项----LINQ to SQL类,文字名称为DataClasses.dbml,如图所示:
3、打开DataClasses.dbml文件,在服务器资源管理器中连接数据库,把要用到的表拖拽到DataClasses.dbml上,如图所示:保存关闭DataClasses.dbml文件,在webConfig文件中会自动生成与数据库的链接:
<connectionStrings>
<add name="OQSS35ConnectionString" connectionString="Data Source=.;Initial Catalog=OQSS35;Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
4、添加一个类似SqlHelper的类文件LinqHelper.cs
LinqHelper.cs文件中的代码为:
public static DataClassesDataContext create()
{
return new DataClassesDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["OQSS35ConnectionString"].ToString());
}
5、新建一个index.aspx页面,在index.aspx页面放一个GridView控件,在GridView控件上绑定字段。页面代码如图所示:
6、在index.aspx.cs文件中写代码绑定表中的所有的数据:代码如下
DataClassesDataContext dc=LinqHelper.Create();
//绑定数据
public void BindData()
{
this.GridView1.DataSource=from c in dc.User
select new
{
c.username,
c.password,
c.GID,
c.UID
};//User为表名
this.GridView1.DataBind();
}
7、添加数据
protected void btnAdd_Click(object sender,EventArgs e)
{
User user=new User();//实例化表User
user.username=this.txtusername.Text.Trim().ToString();//用户名
user.password=this.txtpassword.Text.Trim().ToString();//密码
user.GID=Convert.ToInt32(this.txtGID.text.Trim().ToString());//GID
dc.User.InsertOnSubmit(user);//把新增的数据放到dc中
dc.SubmitChanges();//把新增的数据存到数据库中
this.BindData();
}
8、修改、删除操作
给GridView添加一列
<ItemTemplate>
<a href="update.aspx?UID=<%=eval_r("UID") %>">编辑</a>
<a href="update.aspx?UID=<%=eval_r("UID") %>&&flag=del">删除</a>
</ItemTemplate>
</asp:TemplateField>
再新建一个页面update.aspx,在update.aspx中进行修改删除操作
update.aspx 页面代码如下:
用户名:<asp:TextBox ID="txtusername" runat="server"></asp:TextBox><br />
密码:<asp:TextBox ID="txtpassword" runat="server"></asp:TextBox><br />
GID:<asp:TextBox ID="txtGID" runat="server"></asp:TextBox><br />
<asp:Button ID="btnAdd" runat="server" Text="修改" onclick="btnAdd_Click" />
public void BindData()
{
//显示数据
if(Request.QueryString["UID"]!=null)
{
DataClassesDataContext dc=LinqHelper.create();
int UID=Convert.ToInt32(Request.QueryString["UID"].ToString());
var user=dc.User.where(a=>a.UID==UID).Single();//查询数据
this.txtusername.Text=user.username;//用户名
this.txtpassword.Text=user.password;//密码
this.txtGID.Text=user.GID.ToString();//GID
}
//删除数据
if(Request.QueryString["Flag"]!=null)
{
DataClassesDataContext dc=LinqHelper.create();
int UID=Convert.ToInt32(Request.QueryString["UID"].ToString());
var user=dc.User.where(a=>a.UID==UID).Single();//查询
dc.User.DeleteOnSubmit(user);//删除dc上的数据
dc.SubmitChanges();//删除数据库里的记录
Response.Redirect("index.aspx");
}
}
//修改
protected void btnUpdate_Click(object sender, EventArgs e)
{
DataClassesDataContext dc=LinqHelper.create();
int UID=Convert.ToInt32(Request.QueryString["UID"].ToString());
var user=dc.User.where(a=>a.UID==UID).Single();//查询
user.username=this.txtusername.Text.Trim().ToString();//用户名
user.password=this.txtpassword.Text.Trim().ToString();//密码
user.GID=Convert.ToInt32(this.txtGID.Text.ToString());//GID
dc.SubmitChanges();//修改数据库中的记录
Response.Redirect("index.aspx");
}
9、查询
在index.aspx页面中添加<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="btnSelect" runat="server" Text="查询" onclick="btnSelect_Click" />
后台代码
protected void btnSelect_Click(object sender, EventArgs e)
{
DataClassesDataContext dc=LinqHelper.Create();
this.GridView1.DataSource=dc.User.where(a=>a.username==this.textbox1.text).Select(a=>new {a.GID,a.username,a.password,a.UID});
//this.GridView1.DataSource = dc.User.Where(a => a.username.Contains(this.TextBox1.Text.Trim().ToString())).Select(a => new { a.UID, a.username, a.password, a.GID });//contains模糊查询
this.GridView1.DataBind();
}
10、分页
protected void gvUser_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
gvUser.PageIndex = e.NewPageIndex;
this.BindData();
}