LINQ to SQL 可以調用存儲過程從數據庫中查詢數據。爲了方便開發人員調用存儲過程,LINQ to SQL將爲存儲過程建立一個方法,並指定該方法調用的存儲過程,以及傳入的參數和返回值。數據庫
在左邊數據鏈接中把寫好的存儲過程託到右邊第二個裏面就能夠,當方法調用spa
查詢數據code
use LinqDB //建立一個存儲過程 go create proc Pr_GetUsers as select * from UserInfo order by ID desc go
LinqDBDataContext db = new LinqDBDataContext(); var result = from u in db.Pr_GetUsers() where u.ID < 50 select u; //綁定控件並顯示 dl_List.DataSource = result; 能夠直接當數據源使用 dl_List.DataSource=db.Pr_GetUsers()
dl_List.DataBind();
添加數據blog
create proc Pr_InsertCategory ( @Name varchar(50)=null, @ParentID int=null, @ShowOrder int=null, @Remark text=null ) as insert into Category ([Name],ParentID,ShowOrder,Remark) values (@Name,@ParentID,@ShowOrder,@Remark) go
LinqDBDataContext db = new LinqDBDataContext(); int result= db.Pr_InsertCategory(t_Name.Text, Convert.ToInt32(ddl_Parent.SelectedValue), Convert.ToInt32(t_Num.Text), t_Words.Text); if (result!=-1) { Response.Write("<script>alert('添加成功!')</script>"); } else { Response.Write("<script>alert('添加失敗!')</script>"); }
刪除數據同理 接口
DataContext 類相關的方法ip
檢測數據庫是否存在的DatabaseExists()方法開發
LinqDBDataContext db = new LinqDBDataContext(); if (db.DatabaseExists()) { Response.Write("數據庫鏈接成功!"); }
DatabaseExists()方法在檢測指定的數據庫時,將嘗試打開DataContext類的實例指定的數據庫鏈接。若是打開鏈接成功,則返回true,不然返回false;cmd
建立數據庫的CreateDatabase()方法string
db.CreateDatabase();
刪除數據庫的DeleteDatabase()方法it
db.DeleteDatabase();
執行SQL命令的ExcuteCommand()方法
LinqDBDataContext db = new LinqDBDataContext(); string cmdText = "update userinfo set username=username+'"+DateTime.Now.Year+"' where ID>90"; //至關於SQL語句 int result = db.ExecuteCommand(cmdText); Response.Write(result + "條數據被更新");
執行SQL查詢的ExcuteQuery()方法
LinqDBDataContext db = new LinqDBDataContext(); string cmdText = "select top 10 * from userinfo"; //執行SQL查詢 IEnumerable<UserInfo> result= db.ExecuteQuery<UserInfo>(cmdText); //接口不能new 能夠用子類來接受 foreach (UserInfo u in result) { Response.Write("用戶名稱:" + u.Username + "<br>"); }