Using LINQ in ASP.NET (3)

本文介绍了如何使用LINQtoSQL进行数据查询及处理,并演示了如何通过Visual Studio创建实体类,实现数据的增删改查操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

   在前面的两篇文章中,我们讨论了如何用LINQ TO SQL查询和处理数据,并却学习了如何用LINQ处理存储过程。在先前的例子中,我们是通过创建实体类和我们的数据相关联的,Visual Studio提供了内嵌的设计模式来处理同样的功能。接下来将讨论如何在项目中使用这些类。

   首先添加一个LINQ to SQL 类文件

它将在我们的App_Code文件夹下添加三个文件。.dbml文件(xml对整个类的映射),.layout文件,.cs文件(包含所有自动生成的代码)。

现在我门使用数据库资源管理器连接我们的数据库,将Employees表拖到DBML设计器上。

 

这样编译器将自动为我们生成一个实体类,你可以删除不需要的字段。

同样的方法,我们可以将添加,删除,更新的存储过程也加入到我们的项目中。

为了对实体类指定添加,更新,删除的操作,可以在CEmployee 类上右击鼠标,选择配置行为,将出现下面的窗口:

接下来你就可以通过存储过程为实体类添加新增,更新,删除的行为。ok,这样就通过Visual Studio为我们的工程创建了实体类。

下面利用所建的实体类来完成和(2)中同样的操作

ContractedBlock.gifExpandedBlockStart.gifCode
private void BindDetailsView()
    {
        DataClassesDataContext db 
= new DataClassesDataContext();
        Table
<CEmployee> results= db.GetTable<CEmployee>();
        DetailsView1.DataSource 
= results;
        DetailsView1.DataBind();
    }

 

对数据的操作:

ContractedBlock.gifExpandedBlockStart.gifCode
protected void DetailsView1_ItemUpdating(object sender, DetailsViewUpdateEventArgs e)
    {
        DataClassesDataContext db 
= new DataClassesDataContext();
        db.Employees_Update((
int)DetailsView1.SelectedValue, ((TextBox)DetailsView1.Rows[1].Cells[1].Controls[0]).Text, ((TextBox)DetailsView1.Rows[2].Cells[1].Controls[0]).Text);
    }
    
protected void DetailsView1_ItemInserting(object sender, DetailsViewInsertEventArgs e)
    {
        DataClassesDataContext db 
= new DataClassesDataContext();
        db.Employees_Insert(((TextBox)DetailsView1.Rows[
1].Cells[1].Controls[0]).Text, ((TextBox)DetailsView1.Rows[2].Cells[1].Controls[0]).Text);
    }
    
protected void DetailsView1_ItemDeleting(object sender, DetailsViewDeleteEventArgs e)
    {
        DataClassesDataContext db 
= new DataClassesDataContext();
        db.Employees_Delete((
int)DetailsView1.SelectedValue);
    }

 

是不是很方便?LINQ to SQL的使用就说到这里。

 

转载于:https://www.cnblogs.com/gaoweipeng/archive/2009/04/14/1435667.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值