您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關ASP.NET中怎么利用LINQ處理數據,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
一.引用命名空間
System.Data.Linq
System.Data.Linq.Mapping (需要在項目中先引用System.Data.Linq)
二.為數據庫表創建實體類
Table(Name="Employees")] public class Employee { [Column(IsDbGenerated=true,IsPrimaryKey=true)] public int EmployeeID { get; set; } [Column(Name="FirstName",DbType="varchar(20)")] public string FirstName { get; set; } [Column(Name = "LastName", DbType = "varchar(20)")] public string LastName { get; set; } } |
常用的屬性聲明,可以很好的描述表中字段的屬性:
Name: 字段的名稱
DbType: 字段的數據類型
IsDbGenerated: 是否自動生成
CanBeNull: 字段是否為空
Storage: 保存數據的類字段名
三.創建一個強類型的數據環境
我們的數據庫系統可能會和多種類型的數據源打交道,所以應該使我們的程序有和數據源進行創建連接的能力。這里我們將創建的NorthwindDb類繼承DataContext基類。DataContext類表示LINQ to SQL 框架的主入口點。
其中有相關的處理LINQ to SQL的類,方法等。
public class NorthwindDb:DataContext { public NorthwindDb(string connectionString):base(connectionString) { } public Table |
四.創建Web From
首先為GridView綁定數據
private void BindGridView(string criteria) { string strConn = ConfigurationManager.ConnectionStrings["connstr"].ConnectionString; NorthwindDb db = new NorthwindDb(strConn); IEnumerable
搜索按鈕只需將參數傳進去即可BindGridView(TextBox1.Text);
如果選中了GridView中的某一行,則需要將選中的數據綁定到DetailsView 中進行編輯使用。
private void BindDetailsView() { int employeeID = (int)GridView1.SelectedValue; string strConn = ConfigurationManager.ConnectionStrings["connstr"].ConnectionString; NorthwindDb db = new NorthwindDb(strConn); var results = from emp in db.Employee where emp.EmployeeID == employeeID select emp; DetailsView1.DataSource = results; DetailsView1.DataBind(); }
接下來就是對數據的增刪改操作:
protected void DetailsView1_ItemUpdating(object sender, DetailsViewUpdateEventArgs e) { string strConn = ConfigurationManager.ConnectionStrings["connstr"].ConnectionString; NorthwindDb db = new NorthwindDb(strConn); var results = from emp in db.Employee where emp.EmployeeID == (int)DetailsView1.SelectedValue select emp; results.First().FirstName = ((TextBox)DetailsView1.Rows[1].Cells[1].Controls[0]).Text; results.First().LastName = ((TextBox)DetailsView1.Rows[2].Cells[1].Controls[0]).Text; db.SubmitChanges(); BindGridView(string.Empty); } protected void DetailsView1_ItemInserting(object sender, DetailsViewInsertEventArgs e) { string strConn = ConfigurationManager.ConnectionStrings["connstr"].ConnectionString; NorthwindDb db = new NorthwindDb(strConn); Employee emp = new Employee(); emp.FirstName = ((TextBox)DetailsView1.Rows[1].Cells[1].Controls[0]).Text; emp.LastName= ((TextBox)DetailsView1.Rows[2].Cells[1].Controls[0]).Text; db.Employee.InsertOnSubmit(emp); db.SubmitChanges(); BindGridView(string.Empty); } protected void DetailsView1_ItemDeleting(object sender, DetailsViewDeleteEventArgs e) { string strConn = ConfigurationManager.ConnectionStrings["connstr"].ConnectionString; NorthwindDb db = new NorthwindDb(strConn); var results = db.Employee.Single(emp => emp.EmployeeID==(int)DetailsView1.SelectedValue); db.Employee.DeleteOnSubmit(results); db.SubmitChanges(); BindGridView(string.Empty); }
上述就是小編為大家分享的ASP.NET中怎么利用LINQ處理數據了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。