WebForm(Linq增刪改查)
阿新 • • 發佈:2017-06-02
sub dir 類名 hide 輸入 tex redirect dbm 驗證
一、Linq:
高集成化的數據訪問類,它會自動映射數據庫結構,將表名完整映射成為類名,將列名完整映射成字段名
(1)Linq創建
添加LINQ to SQL類,類名需與要連接的數據庫名一樣
Linq文件是dbml結尾,一個數據庫對應一個Linq文件
(2)數據庫連接
打開服務器資源管理器,點擊下圖黃圈內按鈕,連接到數據庫,彈出添加連接對話框,填寫服務器名(.),選擇使用什麽身份驗證,然後您要連接的數據庫,然後將您要用的數據庫拉到類中。
(3)屬性擴展
新建屬性擴展時,在類前加partial,linq返回的值類型前有?需要先行轉換
public partial class Users {屬性擴展public string sexstr { get { return Convert.ToBoolean(_Sex) ? "男" : "女"; } } public string birthdaystr { get { return Convert.ToDateTime(_Birthday).ToString("yyyy年MM月dd日"); } } public string nationstr { get { return Nation1.NationName; } } }
二、操作
(1)添加
using (StudentDataContext con = new StudentDataContext()) { con.Users.InsertOnSubmit(tous--添加變量); con.SubmitChanges(); }
(2)刪除
string id = Request["id"];--接受要刪除變量 using (StudentDataContext con = new StudentDataContext()) { Users u=con.Users.Where(w=>w.Ids.ToString()==id).FirstOrDefault();--查詢刪除信息 if(u!=null) { con.Users.DeleteOnSubmit(u--刪除變量); con.SubmitChanges(); } Response.Redirect("Default.aspx"); }
(3)全部查詢
using (StudentDataContext con = new StudentDataContext()) { Repeater1.DataSource = con.Users.ToList(); Repeater1.DataBind(); }
(4)修改
using (StudentDataContext con = new StudentDataContext()) { Users tous = new Users(); List<Users> ulist = con.Users.ToList(); tous = ulist.Where(w => w.Username.ToString() == TextBox1.Text).FirstOrDefault(); if (tous != null) { tous.Username = TextBox1.Text; if (TextBox2.Text == TextBox5.Text) { tous.Password = TextBox2.Text; } else { Label1.Text = "兩次密碼輸入不一致"; } tous.Nikename = TextBox3.Text; if (Ra_sex.Items[0].Selected) { tous.Sex = true; } else { tous.Sex = false; } tous.Birthday = Convert.ToDateTime(TextBox4.Text); tous.Nation = dr_nation.SelectedValue;
----------------變量重新賦值 con.SubmitChanges();--數據庫接受 } }
WebForm(Linq增刪改查)