Linq

本文详细介绍了使用LINQ进行数据库操作的基本方法,包括如何通过LINQ的InsertOnSubmit、DeleteOnSubmit和Attach方法实现数据的新增、删除与更新。通过实例演示了如何在代码中运用这些方法,并强调了在执行删除和更新操作时需要调用Attach方法以确保实体与DataContext关联,从而能够从数据库中更新或删除实体。

Form:http://www.cnblogs.com/nikymaco/archive/2012/07/07/2580196.html

 

到现在为止你还未触碰LINQ,那进来吧 —— LINQ入门(1,2,3)

数据新增

通过执行Table<TEneity>类的方法 InsertOnSubmit 新增数据

 

var dataContext = new LinqToSqlDemo(CONN_STR);
// 新增用户
dataContext.Users.InsertOnSubmit(
                new Users
                {
                    UserId = 4,
                    UserName = "赵六",
                    Email = "wangw@xxx.com",
                    UserDetails = new UserDetails
                    {
                        Address = "xxx大道",
                        Age = 25,
                        UserId = 4
                    }
                });
// 注意,这里是必须的,提交修改
dataContext.SubmitChanges();

 


数据删除

通过执行Table<TEntity>类的方法 DeleteOnSubmit 进行删除数据

 

var dataContext = new LinqToSqlDemo(CONN_STR);
var user = (from usr in dataContext.Users
            where usr.UserName == "张三"
            select usr).SingleOrDefault();

dataContext.Users.Attach(user);
// 上传数据
dataContext.Users.DeleteOnSubmit(user);

 

数据更新

在对实体更新完毕后直接调用DataContext的SubmitChanges方法即可。

 

var dataContext = new LinqToSqlDemo(CONN_STR);
var user = (from usr in dataContext.Users
            where usr.UserName == "张三"
            select usr).SingleOrDefault();

user.UserName = "张三三";

dataContext.Users.Attach(user, false);

// 更新数据
dataContext.SubmitChanges();

 

注意,在数据删除和更新的时候我们可以看到都执行了Table<TEntity>类的Attach方法,它是允许反序列化的实体与 DataContext 的新实例关联,以便可以从数据库更新或删除这些实体。

转载于:https://www.cnblogs.com/alex-zhao/archive/2012/09/09/2677949.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值