ALinq 入门学习(三)--Where 条件查询

ALinq 中的Where条件查询和 Linq to SQL 中的Where条件查询是一样的操作方式。其作用也就是过滤查询。

 

1. ALinq 的简单查询

ALinq 的简单查询

 1 public void Function()
 2         {
 3             OA_DBDataContext context = new OA_DBDataContext(new SqlConnection(connectionString));
 4             context.Log = Console.Out;
 5             var alinq = from m in context.TabMenu select m;
 6             foreach (TabMenu menu in alinq)
 7             {
 8                 Console.WriteLine(menu.Id+"==>"+menu.MenuName);
 9             }
10         }

 

上面的代码中,变量connectionString 是连接数据的的字符串。这段代码是使用ALinq 库来进行查询数据库表TabMenu 的全部数据,并输出对应列的信息。这里做了日志的处理,可以在控制台打印出ALinq生成的SQL语句。

 

2.ALinq 的where条件查询

ALinq where条件查询

 1 /// <summary>
 2         /// ALinq where 条件查询
 3         /// </summary>
 4         public void FunctionWhere()
 5         {
 6             OA_DBDataContext context = new OA_DBDataContext(new SqlConnection(connectionString));
 7             context.Log = Console.Out;
 8             var alinq = from m in context.TabMenu where m.Id>6 select m;
 9             foreach (TabMenu menu in alinq)
10             {
11                 Console.WriteLine(menu.Id + "==>" + menu.MenuName);
12             }
13 
14             Console.WriteLine("\n");
15             IList<TabMenu> list = context.TabMenu.Where(m => m.Id > 6).ToList<TabMenu>();
16             foreach (TabMenu menu in list)
17             {
18                 Console.WriteLine(menu.Id + "==>" + menu.MenuName);
19             }
20         }

 

这个方法是ALinq 中的Where条件查询,这里的查询使用到了两种方式来过滤。第一个是直接使用Linq语句,后面还是用到了Lamda表达式进行过滤条件查询。 但是这两种方式查询到的的结果是一样的,.NET 3.0 之后对函数式编程的支持,使得程序更加简单明了。

 

3.ALinq 查询第一行数据

ALinq 查询第一行数据

 1 /// <summary>
 2         /// 查询集合第一行数据
 3         /// </summary>
 4         public void FunctionTop()
 5         {
 6             OA_DBDataContext context = new OA_DBDataContext(new SqlConnection(connectionString));
 7             context.Log = Console.Out;
 8             TabMenu menu = context.TabMenu.First();
 9             Console.WriteLine(menu.Id+"==>"+menu.MenuName);
10             Console.WriteLine("\n");
11 
12             menu = context.TabMenu.First(m=>m.Id>6);
13             Console.WriteLine(menu.Id + "==>" + menu.MenuName);
14 
15             menu = context.TabMenu.OrderBy(m => m.MenuCode).First();
16             Console.WriteLine(menu.Id + "==>" + menu.MenuName);
17         }

 

ALinq 和Linq to SQL 一样,也支持First 函数,用于查询数据行的第一行数据,等同于SQL Server 数据库中的Top 1 查询。当然在查询的过程还可以过滤一些条件,First 也可以和Where 一样添加一些查询条件。 在查询的时候,我们如果使用排序,那么查询的第一行数据也会不同。

时间: 2024-09-30 17:09:37

ALinq 入门学习(三)--Where 条件查询的相关文章

ALinq 入门学习(七)--OrderBy 排序查询

好些天没有写文章了,博客园也发生了很多变化.最近园子里面火药味越来越浓了.有时候看着想过去发表一下自己的观点,仔细想想还是算了,我不想被卷入这个漩涡中.还是老老实实写自己的文章,记录一下自己所学的东西,学习别人的程序的思考方式,分享一下自己的学习经验.不过这里还是希望博客园中的同仁们,共同的维护好这里的学习氛围,彼此共勉,更多的提点而不是指责.   1.ALinq 简单的排序查询 在ALinq中查询数据排序是使用OrderBy关键词,这和Linq to SQL是没有区别的,查询的时候默认的是升序

ALinq 入门学习(六)--Join 连接查询

简单介绍一下连接查询:通过连接运算符可以实现多个表查询.连接是关系数据库模型的主要特点,也是它区别于其它类型数据库管理系统的一个标志.from join_table1 join_type join_table2 on Join_condition  这个是SQL 中最简单的连接查询功能语法.在ALinq , Linq ,Entity Framework 中都有涉及到连接查询,在某种程度上的确简便了很多查询.但是个人认为,Linq to SQL ,ALinq 使用Linq 语句来连接查询数据库不是

ALinq 入门学习(八)--ALinq 对Vs2010 的支持

1.       ALinq FOR  VS2010 简介 之前写过一些关于ALinq 的相关文章,详细请参考如下:     ALinq入门学习(一)--ALinq简介     ALinq入门学习(二)--DataContext     ALinq入门学习(三)--Where条件查询     ALinq入门学习(四)--查询关键字     ALinq入门学习(五)--插入数据     ALinq入门学习(五)--删除修改数据     ALinq入门学习(六)--Join连接查询     ALin

ALinq 入门学习(四)--查询关键字

在SQL查询中对应着各种各样的查询关键字,如果distinct,count,sum 等等一些关键字.在Linq to SQL 中对这些关键字的使用做了封装,同样在ALinq 中也有相同的操作函数.   1. ALinq 过滤查询重复数据 Distinct ALinq 过滤查询重复数据Distinct  1 /// <summary> 2         /// ALinq 查询关键字 Distinct 3         /// </summary> 4         publi

ALinq 入门学习(一)--ALinq简介

不写文章有几日了,这些天都浪迹于java程序中,潜心修炼java中的Spring框架,感触良多.不过我还是不打算写java相关的文章,因为java我还是菜鸟.前些天写过关于自己的一个ORM框架(点击阅读),希望看过的同仁们有些收获.做程序我喜欢开源,虽然上次老赵"鄙视"过我们,不是其他的原因,开源达到了资源共享的目的..NET 中出的ORM框架也不少了,Hibernate的克隆版NHibernate,还有Linq to SQL ,Entity FrameWork ,ALinq.接下我要

ALinq 入门学习(二)--DataContext

 1.       ALinq 之DataContext简介 本系列文章使用SQL Server2005 数据库,.NET 3.5 环境. 首先我们建立一个OA_DB数据库,其中建立了三张表,表结构如下图: ORM 映射的主要作用使用对象形式操作数据库,那我们如何使用对象形式去操作以上数据库的三张表呢,那这里讲到的的就是DataContext.DataContext 的作用很明确,就和Linq to SQL 中的DataContext 的作用一样: 把查询句法翻译成SQL语句,以及把数据从数据库

OpenGL入门学习[三]

在第二课中,我们学习了如何绘制几何图形,但大家如果多写几个程序,就会发现其实还是有些郁闷之处.例如:点太小,难以看清楚:直线也太细,不舒服:或者想画虚线,但不知道方法只能用许多短直线,甚至用点组合而成. 这些问题将在本课中被解决. 下面就点.直线.多边形分别讨论. 1.关于点 点的大小默认为1个像素,但也可以改变之.改变的命令为glPointSize,其函数原型如下: void glPointSize(GLfloat size); size必须大于0.0f,默认值为1.0f,单位为"像素&quo

iOS中 Swift初级入门学习(三)

// // main.swift // LessonSwift-03 // // Copyright (c) 2015年 韩俊强. All rights reserved. // import Foundation // 声明一个类, 我们用class关键字修饰 // 类可以被继承, 它是引用类型 class Student { var name = "小米" var gender = "男" var age = 18 } // 创建一个student实例 let

MySQL入门学习(三)

mysql MySQL入门学习(三) --学习篇   了解了一些最基本的操作命令后,我们再来学习如何创建一个数据库和数据库表. 1.使用SHOW语句找出在服务器上当前存在什么数据库: mysql> SHOW DATABASES; +----------+ | Database | +----------+ | mysql  | | test   | +----------+ 3 rows in set (0.00 sec) 2.创建一个数据库abccs mysql> CREATE DATABA