您的位置:首页 > 编程语言 > Qt开发

Linq二 LinqToSql

2013-12-22 21:38 267 查看
虽然微软已经停止更新了LinqToSql,但是目前的已完全满足目前的需求.

第一步:添加LinqToSql



第二步:将其关联的Sqlserver数据库



第三步:数据库已变成实体类



第四步:可以对数据库进行增删改查操作

static void Main(string[] args)
{
DataClassesDataContext dataContext = new DataClassesDataContext();

//生成分类实体类
Category category1 = new Category()
{
Name = "国际要闻"
};
dataContext.Category.InsertOnSubmit(category1);
dataContext.SubmitChanges();
}


这样就新增成功了

DataClassesDataContext 这个相当于EF中的DBContext,数据库所有对象都在里面了

DataClassesDataContext的属性Category就是映射数据表的一个集合属性

Category category1 = new Category() 就相当于表的实体类,属性映射到对应字段

Insert操作
Insert用于向数据库添加记录。一般情况下,使用“DataContext.表映射集合.InsertOnSubmit(实体类)”的方式就可以完成Insert操作。不过这里要注意一点,由于Linq to Sql使用了“Unit of Work”模式,所以,对数据库的操作不会立即提交到数据库,而要调用DataContext的SubmitChanges方法,所有改动才会被提交到数据库。

Delete操作
Delete操作用于从数据库中删除记录。表映射集合的DeleteOnSubmit方法可以实现这个操作。这个方法需要一个参数,就是要删除的实体类,这里不能直接传个ID去删除,要首先通过ID找到相应实体类,传给DeleteOnSubmit再删除。当然最后不要忘了SubmitChanges。

Update操作
Update操作用于更新数据库中某已存在记录的信息。在Linq to Sql中,Update操作就是首先加载相应的实体类,修改其相应字段后,SubmitChanges就可以了。

Select操作

dataContext.Category是一个linq.Data.Table<T>的一个泛型集合,所有我们可以使用Linq进行查询

var s = from b in dataContext.Category
where b.ID == 1
orderby b.ID
select b.Name;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: