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 的新实例关联,以便可以从数据库更新或删除这些实体。