LINQ to SQL
2018-04-03 17:21
211 查看
1.在VS2010使用Linq to SQL
1.1创建3.5版本的asp网页将数据库中的表拖动到dbml中
2.DataContext数据上下文
执行非查询语句的 ExecuteQuery()方法
private void ExecuteSqlQuery() { //创建LinqDB 数据库上下文的实例 TestDataContext db = new TestDataContext(); //创建SQL 语句 string sql = "SELECT TOP 5 * FROM UserInfo"; IEnumerable<UserInfo> users = db.ExecuteQuery<UserInfo>(sql); //显示查询的结果 foreach (UserInfo u in users) { Response.Write("用户名称:" + u.Username + "<br/>"); } }运行到浏览器:
执行查询语句的 Execute Command()方法
protected void Page_Load(object sender, EventArgs e) { TestDataContext db = new TestDataContext(); string sql = "update userInfo set UserName={0} where id=7"; int num = db.ExecuteCommand(sql, "我的新名字"); Response.Write(num.ToString() + "行受影响!"); }到浏览器的结果为:
提交更改到数据库的 Submitchanges()方法
Submitchanges()是将更改的数据上传到数据库
在Execute Command例子中将学号为7的学生名字修改为“我的新名字”
但是数据库中依然没有改变,在执行[b]ExecuteQuery看浏览器的时候确实修改了[/b]
再次执行[b]ExecuteQuery查询所有用户名字后:[/b]
使用submitchanges()后数据库也一共更改。
3.Table<T>泛型接口
使用Table<T>能够方便的操作数据库中的数据DeleteOnSubmit()此表中的实体置于ending delete
InsertAllOnSubmit(TSubEntity)将集合中的所有处于Pending insert状态的实体添加到DataContext
InsertOnSubmit()将处于Pending insert状态的实体添加到Table<TEntity>
protected void Page_Load(object sender, EventArgs e) { //实例化datacontext Test_1DataContext db = new Test_1DataContext(); //打印添加前的角色数量 Response.Write("添加前的角色数量" + db.UserRole.Count() + "<br>"); //创建一个角色实体 Role role = new Role() { RoleName = "我是新角色" }; //将角色实体添加到table<T> db.Role.InsertOnSubmit(role); //将数据提交到数据库 db.SubmitChanges(); //打印添加后的角色数量 Response.Write("添加后的角色数量" + db.UserRole.Count() + "<br>"); }
运行到浏览器之后就是:
4.EntitySet<T>泛型接口
Add()方法能够将元素或实体添加到EntitySet<T>集合末尾Remove()方法能够从EntitySet<T>中移除指定的元素或实体
RemoveAt()方法能够从EntitySet<T>中移除指定位置处的元素或实体
Contains()方法能够判断在EntitySet<T>中是否包含指定的元素或实体
5.EntityRef<T>泛型接口
EntityRef<T>处理一对多关系中的数据6.IsingResult<T>泛型接口
ISingleResult<T>泛型接口表示具有单个返回序列的映射函数的结果相关文章推荐
- ADO.NET Linq To SQl与Data Entity 的使用比较
- 强大的DataGrid组件[3]_数据交互之Linq to SQL——Silverlight学习笔记
- SqlMetal 命令行工具可为 LINQ to SQL 的 .NET Framework 组件生成代码和映射
- C# 区间合并(Linq To Sql)
- [转]linq to sql (Group By/Having/Count/Sum/Min/Max/Avg操作符)
- Linq to sql 接收存储过程返回的多个结果集
- LINQ体验(5)--LINQ to SQL语句之Select/Distinct和Count/Sum/Min/Max/Avg
- linq to sql的多条件动态查询(上)
- 深入理解 LINQ to SQL 生成的 SQL 语句
- 一步一步学Linq to sql
- Linq to SQL之使用存储过程 (2)
- 基于属性的映射 (LINQ to SQL)
- LINQ to SQL语句(3)之Count/Sum/Min/Max/Avg
- Linq To Sql中实现Left Join与Inner Join使用Linq语法与lambda表达式
- LINQ to SQL语句(6)之Group By/Having
- Linq to Sql 合并数据
- LINQ TO SQL:如何接收多个结果集
- LINQ to Entities 实现sql 关键字"In"方式总结
- Linq to sql学习之查询句法
- LINQ TO SQL和Entity Framework 的关系你了解多少?