当前位置: 首页>>代码示例>>C#>>正文


C# Query.Filter方法代码示例

本文整理汇总了C#中Query.Filter方法的典型用法代码示例。如果您正苦于以下问题:C# Query.Filter方法的具体用法?C# Query.Filter怎么用?C# Query.Filter使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Query的用法示例。


在下文中一共展示了Query.Filter方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: TestOr_2

        public void TestOr_2() {
            //创建第二个查询对象
            Query<Customer, int> query2 = new Query<Customer, int>();
            query2.Filter( t => t.EnglishName == "B" ).Filter( t => t.Age == 20 );

            //添加条件
            _query.Filter( t => t.Name == "A" ).Or( query2 );

            //清空并添加一个条件,用And操作合并
            query2.Clear();
            query2.Filter( t => t.Age == 10 );
            _query.And( query2 );

            //验证
            List<Customer> customers = _query.GetList( _customerRepository.Find() );
            Assert.AreEqual( 1, customers.Count );
        }
开发者ID:NetUtil,项目名称:Util,代码行数:17,代码来源:OrTest.cs

示例2: TestOr_1

        public void TestOr_1() {
            //添加条件
            _query.Filter( t => t.Name == "A" );

            //创建第二个查询对象
            Query<Customer, int> query2 = new Query<Customer, int>();
            query2.Filter( t => t.EnglishName == "B" );

            //或操作合并查询对象
            _query.Or( query2 );

            //验证
            List<Customer> customers = _query.GetList( _customerRepository.Find() );
            Assert.AreEqual( 2, customers.Count );
        }
开发者ID:NetUtil,项目名称:Util,代码行数:15,代码来源:OrTest.cs

示例3: TestAnd

        public void TestAnd() {
            //给第一个查询对象添加条件
            _query.Filter( t => t.Name == "A" );

            //创建第2个查询对象
            var query2 = new Query<Customer, int>();
            query2.Filter( t => t.Age == 1 );

            //将第2个查询对象合并到第1个查询对象
            _query.And( query2 );

            //验证
            Expression<Func<Customer, bool>> expected = t => t.Name == "A" && t.Age == 1;
            Assert.AreEqual( expected.ToString(), _query.GetPredicate().ToString() );
        }
开发者ID:NetUtil,项目名称:Util,代码行数:15,代码来源:QueryTest.cs

示例4: TestClear

        public void TestClear() {
            //给第一个查询对象添加条件
            _query.Filter( t => t.Name == "A" );

            //创建第2个查询对象
            Query<Customer, int> query2 = new Query<Customer, int>();
            query2.Filter( t => t.Age == 1 );

            //或操作合并查询对象
            _query.Or( query2 );

            //清空第2个查询对象,再添加条件
            query2.Clear();
            query2.Filter( t => t.Name == "C" );

            //与操作合并查询对象
            _query.And( query2 );

            //验证
            Expression<Func<Customer, bool>> expected = t => ( t.Name == "A"|| t.Age == 1 ) && t.Name == "C";
            Assert.AreEqual( expected.ToString(), _query.GetPredicate().ToString() );
        }
开发者ID:NetUtil,项目名称:Util,代码行数:22,代码来源:QueryTest.cs

示例5: TestAnd_Or

        public void TestAnd_Or() {
            //给第一个查询对象添加条件
            _query.Filter( t => t.Name == "A" );
            _query.Filter( t => t.EnglishName == "A" );

            //创建第2个查询对象
            Query<Customer, int> query2 = new Query<Customer, int>();
            query2.Filter( t => t.Name == "B" );
            query2.Filter( t => t.Age == 1 );

            //用或操作将第2个查询对象合并到第1个查询对象
            _query.Or( query2 );

            //创建第3个查询对象
            Query<Customer, int> query3 = new Query<Customer, int>();
            query3.Filter( t => t.Name == "C" );
            query3.Filter( t => t.Age > 10 );

            //用与操作将第3个查询对象合并到第1个查询对象
            _query.And( query3 );

            //验证
            Expression<Func<Customer, bool>> expected = t => ( ( t.Name == "A" && t.EnglishName == "A" ) 
                || ( t.Name == "B" && t.Age == 1 ) ) && ( t.Name == "C" && t.Age > 10 );
            Assert.AreEqual( expected.ToString(), _query.GetPredicate().ToString() );
        }
开发者ID:NetUtil,项目名称:Util,代码行数:26,代码来源:QueryTest.cs


注:本文中的Query.Filter方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。