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


C# Search.CompileFacetCriteria方法代码示例

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


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

示例1: Facet

        public void Facet()
        {
            var search = new Search();
            var criteria = new[]
                               {
                                   new FacetSearchCriteria
                                       {
                                           InternalName = "freeTextFacet_1",
                                           DisplayName = "Test",
                                           FacetId = 1,
                                           SearchOperator = SearchOperator.StartsWith,
                                           Type = SearchFieldType.String,
                                           Value = "GiveCamp"
                                       }
                               };

            var expr = search.CompileFacetCriteria(criteria, null);

            Assert.AreEqual(SimpleExpressionType.And, expr.Type);

            var first = expr.LeftOperand as SimpleExpression;
            Assert.IsNotNull(first);
            var reference = first.LeftOperand as ObjectReference;
            Assert.IsNotNull(reference);
            Assert.AreEqual("FacetId", reference.GetName());
            Assert.AreEqual("freeTextFacet_1", reference.GetOwner().Alias);
            Assert.AreEqual(SimpleExpressionType.Equal, first.Type);
            Assert.AreEqual(1, first.RightOperand);

            var second = expr.RightOperand as SimpleExpression;
            Assert.IsNotNull(second);
            reference = second.LeftOperand as ObjectReference;
            Assert.IsNotNull(reference);
            Assert.AreEqual("FreeTextValue", reference.GetName());
            Assert.AreEqual("freeTextFacet_1", reference.GetOwner().Alias);
            var function = second.RightOperand as SimpleFunction;
            Assert.IsNotNull(function);
            Assert.AreEqual("like", function.Name.ToLowerInvariant());
            Assert.AreEqual(1, function.Args.Count);
            Assert.AreEqual("GiveCamp%", function.Args.First());
            Assert.AreEqual(SimpleExpressionType.Function, second.Type);
        }
开发者ID:robinminto,项目名称:GiveCRM,代码行数:42,代码来源:SearchTest.cs


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