Entity Framewrok简单练习(linq语句)
2014-05-15 20:13
190 查看
<span style="font-size:18px;">前台代码: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="EF作业.WebForm1" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title> </head> <body> <form id="form1" runat="server"> <div> 根据用户名查询:<asp:DropDownList ID="DropDownList1" runat="server"></asp:DropDownList><asp:Button ID="Button1" runat="server" Text="查询" OnClick="Button1_Click" /> <br /><br /> <asp:GridView ID="GridView1" runat="server" OnRowCommand="GridView1_RowCommand" OnRowCancelingEdit="GridView1_RowCancelingEdit" OnRowEditing="GridView1_RowEditing" OnRowUpdating="GridView1_RowUpdating"> <Columns> <asp:TemplateField> <ItemTemplate> <asp:Button ID="Button3" runat="server" Text="删除" CommandArgument='<%#Eval("UserName") %>' /> </ItemTemplate> </asp:TemplateField> <asp:CommandField HeaderText="编辑" ShowEditButton="True" /> </Columns> </asp:GridView> <div id="div" runat="server" visible="true"> <table> <tr><td>用户名:</td><td> <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox></td></tr> <tr><td>密码:</td><td> <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox></td></tr> <tr><td>姓名:</td><td> <asp:TextBox ID="TextBox3" runat="server"></asp:TextBox></td></tr> <tr><td>电话:</td><td> <asp:TextBox ID="TextBox4" runat="server"></asp:TextBox></td></tr> <tr><td>部门:</td><td> <asp:DropDownList ID="DropDownList2" runat="server"></asp:DropDownList></td></tr> <tr><td>性别:</td><td> <asp:RadioButton ID="RadioButton1" runat="server" Text="男" GroupName="sex" /><asp:RadioButton ID="RadioButton2" runat="server" Text="女" GroupName="sex" /></td></tr> </table> </div> <br /><br /> <asp:Button ID="Button2" runat="server" Text="添加" OnClick="Button2_Click" /> </div> </form> </body> </html> 后台代码: using System; using System.Collections.Generic; using System.Data.Entity.Infrastructure; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace EF作业 { public partial class WebForm1 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { lianxiEntities mymodel = new lianxiEntities(); var user = from c in mymodel.T_User select c.UserName; this.DropDownList1.DataSource = user.ToList(); this.DropDownList1.DataBind(); var bumen = from a in mymodel.T_Meau select a; this.DropDownList2.DataValueField="id"; this.DropDownList2.DataTextField = "meauname"; this.DropDownList2.DataSource =bumen.ToList(); this.DropDownList2.DataBind(); Lode(); } } //查询单个 protected void Button1_Click(object sender, EventArgs e) { //var query = from d in edm.Order_Details //join order in edm.Orders //on d.OrderID equals order.OrderID // select new // { // OrderId = order.OrderID, // ProductId = d.ProductID, // UnitPrice = d.UnitPrice //}; string username = this.DropDownList1.Text; lianxiEntities mymodel = new lianxiEntities(); var user = from c in mymodel.T_User join order in mymodel.T_Meau on c.DepartMent equals order.id where c.UserName == username select new { c.UserName, c.Password, c.Name, c.Tel, order.meauname, c.Gender }; this.GridView1.DataSource = user.ToList(); this.GridView1.DataBind(); } //添加一条数据 protected void Button2_Click(object sender, EventArgs e) { lianxiEntities mymodel = new lianxiEntities(); T_User user = new T_User(); user.UserName = this.TextBox1.Text; user.Password = this.TextBox2.Text; user.Name = this.TextBox3.Text; user.Tel = this.TextBox4.Text; user.DepartMent = this.DropDownList2.SelectedItem.Value; if (this.RadioButton1.Checked == true) { user.Gender = this.RadioButton1.Text; } else { user.Gender = this.RadioButton2.Text; } mymodel.T_User.Add(user); int result= mymodel.SaveChanges(); if (result>0) { Lode(); this.div.Visible =false; } } //连接查询 protected void Lode() { lianxiEntities mymodel = new lianxiEntities(); var user = from c in mymodel.T_User join order in mymodel.T_Meau on c.DepartMent equals order.id select new { c.UserName, c.Password, c.Name, c.Tel, order.meauname, c.Gender }; this.GridView1.DataSource = user.ToList(); this.GridView1.DataBind(); } protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e) { string username = e.CommandArgument.ToString(); lianxiEntities mymodel = new lianxiEntities(); // var user = from c in mymodel.T_User // where c.UserName == username // select c; // foreach (T_User item in user) // { // mymodel.T_User.Remove(item); // } //int result= mymodel.SaveChanges(); //if (result>0) //{ // Lode(); //} #region 不用查询删除 #region vs2010 //MyTestEntities mytest = new MyTestEntities(); //T_User user = new T_User() { UserName = username }; ////将实体附加到内容管理器中 //mytest.AttachTo("T_User", user); ////设置这个user实体(UserName=username的实体)的状态为“待删除” //mytest.ObjectStateManager.ChangeObjectState(user, System.Data.EntityState.Deleted); //mytest.SaveChanges(); #endregion #region vs2012或2013 T_User user = new T_User() { UserName = username }; DbEntityEntry entry = mymodel.Entry<T_User>(user); entry.State = System.Data.EntityState.Deleted; //vs2013 entry.State = System.Data.Entity.EntityState.Deleted; int result = mymodel.SaveChanges(); if (result > 0) { Lode(); } #endregion #endregion } protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) { GridView1.EditIndex = e.NewEditIndex; Lode(); } protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) { GridView1.EditIndex = -1; Lode(); } protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e) { string username = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString().Trim(); string password = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[3].Controls[0])).Text.ToString().Trim(); string name = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[4].Controls[0])).Text.ToString().Trim(); string tel = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[5].Controls[0])).Text.ToString().Trim(); lianxiEntities mymodel = new lianxiEntities(); var user = from c in mymodel.T_User where c.UserName == username select c; foreach (T_User item in user) { item.Password =password; item.Name = name; item.Tel = tel; } #region 不查询修改 //lianxiEntities mymodel = new lianxiEntities(); //T_User user1 = new T_User(); //user1.UserName = username; //user1.Password = password; //user1.Name = name; //user1.Tel = tel; #region vs2010 //mymodel.AttachTo("T_User", user); //mymodel.ObjectStateManager.ChangeObjectState(user, System.Data.EntityState.Modified); //mymodel.SaveChanges(); #endregion #region 使用vs2012修改 //DbEntityEntry entry = mytest.Entry<T_User>(user); //mymodel.State = System.Data.EntityState.Modified; //mymodel.SaveChanges(); #endregion #endregion int result= mymodel.SaveChanges(); if (result>0) { GridView1.EditIndex = -1; Lode(); } } } }</span>
相关文章推荐
- Entity framewrok (linq to entity)查询优化的一点摸索
- Entify Framewrok - LINQ简单使用
- Entity Framewrok 7beta7中不同版本sql server自动生成分页sql语句的问题
- Entity framewrok (linq to entity)查询优化的一点摸索
- adding validation annotators to model classes 在linq to EntityFrame的Model中添加前台验证validation annotators
- C#简单实现贪吃蛇程序(LinQ + Entity)
- asp.net MVC + linq to Entity简单教程(四)linq to Entity查询中其它方法的使用
- asp.net MVC + linq to Entity简单教程(五)linq to Entity中join的使用以及子查询
- linq to entity 查看生成的SQL语句
- asp.net MVC + linq to Entity简单教程(五)linq to Entity中join的使用以及子查询
- Linq to Entity 增,删,改,查 语句
- 做梦想起来的C#简单实现贪吃蛇程序(LinQ + Entity)
- 写一个简单的linq查询语句
- SQL语句的简单练习
- asp.net MVC + linq to Entity简单教程(二)MVC的简单操作
- asp.net MVC + linq to Entity简单教程(一)MVC的建立与Entity的建立
- Linq语句简单应用
- java简单的break语句练习
- asp.net MVC + linq to Entity简单教程(三)linq to Entity的基本操作
- 【Oracle练习】⑩Oracle简单语句综合练习