日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
詳解在ASP.NET中用LINQ實現(xiàn)數(shù)據(jù)處理

一.引用命名空間

為眉山等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及眉山網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都網(wǎng)站建設(shè)、成都做網(wǎng)站、眉山網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!

System.Data.Linq

System.Data.Linq.Mapping (需要在項目中先引用System.Data.Linq)

二.為數(shù)據(jù)庫表創(chuàng)建實體類

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: 字段的數(shù)據(jù)類型

IsDbGenerated: 是否自動生成

CanBeNull: 字段是否為空

Storage: 保存數(shù)據(jù)的類字段名

三.創(chuàng)建一個強類型的數(shù)據(jù)環(huán)境

我們的數(shù)據(jù)庫系統(tǒng)可能會和多種類型的數(shù)據(jù)源打交道,所以應(yīng)該使我們的程序有和數(shù)據(jù)源進行創(chuàng)建連接的能力。這里我們將創(chuàng)建的NorthwindDb類繼承DataContext基類。DataContext類表示LINQ to SQL 框架的主入口點。

其中有相關(guān)的處理LINQ to SQL的類,方法等。

public class NorthwindDb:DataContext
{
public NorthwindDb(string connectionString):base(connectionString)
{

}

public Table Employee;
}

四.創(chuàng)建Web From

首先為GridView綁定數(shù)據(jù)

private void BindGridView(string criteria)
{
string strConn = ConfigurationManager.ConnectionStrings["connstr"].ConnectionString;
NorthwindDb db = new NorthwindDb(strConn);

IEnumerable results;

if (criteria == string.Empty)
{
results=db.Employee.ToArray();
}
else
{
results = (from c in db.Employee
where c.FirstName.Contains(criteria)
select c).ToArray();

}
GridView1.DataSource = results;
GridView1.DataBind();
}

搜索按鈕只需將參數(shù)傳進去即可BindGridView(TextBox1.Text);

如果選中了GridView中的某一行,則需要將選中的數(shù)據(jù)綁定到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 GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
GridView1.SelectedIndex = e.NewSelectedIndex;
}
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
int employeeID = (int)GridView1.SelectedValue;
string strConn = ConfigurationManager.ConnectionStrings["connstr"].ConnectionString;
BindDetailsView();
}

接下來就是對數(shù)據(jù)的增刪改操作:

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);

}

更新和添加的操作差不多,只是作了些小的改動。

ok,這就是在ASP.NET中利用LINQ對數(shù)據(jù)的操作。


當(dāng)前題目:詳解在ASP.NET中用LINQ實現(xiàn)數(shù)據(jù)處理
URL地址:http://m.5511xx.com/article/cccgpje.html