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


C# Expressions.ExpressionTreeVisitor类代码示例

本文整理汇总了C#中System.Linq.Expressions.ExpressionTreeVisitor的典型用法代码示例。如果您正苦于以下问题:C# ExpressionTreeVisitor类的具体用法?C# ExpressionTreeVisitor怎么用?C# ExpressionTreeVisitor使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


ExpressionTreeVisitor类属于System.Linq.Expressions命名空间,在下文中一共展示了ExpressionTreeVisitor类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: VisitChildren

        protected override Expression VisitChildren(ExpressionTreeVisitor visitor)
        {
            var newField = (LuceneQueryFieldExpression)visitor.VisitExpression(QueryField);
            var newPattern = visitor.VisitExpression(QueryPattern);

            return (newPattern == QueryPattern && newField == QueryField) ? this : new LuceneQueryPredicateExpression(newField, newPattern, Occur) { AllowSpecialCharacters = AllowSpecialCharacters };
        }
开发者ID:benjaminramey,项目名称:Lucene.Net.Linq,代码行数:7,代码来源:LuceneQueryPredicateExpression.cs

示例2: BinaryExpressionTextGenerator

    public BinaryExpressionTextGenerator (ISqlCommandBuilder commandBuilder, ExpressionTreeVisitor expressionVisitor)
    {
      ArgumentUtility.CheckNotNull ("commandBuilder", commandBuilder);
      ArgumentUtility.CheckNotNull ("expressionVisitor", expressionVisitor);

      _commandBuilder = commandBuilder;
      _expressionVisitor = expressionVisitor;

      _simpleOperatorRegistry = new Dictionary<ExpressionType, string>
                                {
                                    { ExpressionType.Add, "+" },           
                                    { ExpressionType.AddChecked, "+" },    
                                    { ExpressionType.And, "&" },           
                                    { ExpressionType.AndAlso, "AND" },     
                                    { ExpressionType.Divide, "/" },        
                                    { ExpressionType.ExclusiveOr, "^" },   
                                    { ExpressionType.GreaterThan, ">" },   
                                    { ExpressionType.GreaterThanOrEqual, ">=" }, 
                                    { ExpressionType.LessThan, "<" },            
                                    { ExpressionType.LessThanOrEqual, "<=" },    
                                    { ExpressionType.Modulo, "%" },              
                                    { ExpressionType.Multiply, "*" },            
                                    { ExpressionType.MultiplyChecked, "*" },     
                                    { ExpressionType.Or, "|" },                  
                                    { ExpressionType.OrElse, "OR" },             
                                    { ExpressionType.Subtract, "-" },            
                                    { ExpressionType.SubtractChecked, "-" },     
                                    { ExpressionType.Equal, "=" },
                                    { ExpressionType.NotEqual, "<>" }            
                                };
    }
开发者ID:re-motion,项目名称:Relinq-SqlBackend,代码行数:31,代码来源:BinaryExpressionTextGenerator.cs

示例3: VisitChildren

      public CaseWhenPair VisitChildren (ExpressionTreeVisitor visitor)
      {
        var newWhen = visitor.VisitExpression (_when);
        var newThen = visitor.VisitExpression (_then);

        return Update (newWhen, newThen);
      }
开发者ID:re-motion,项目名称:Relinq-SqlBackend,代码行数:7,代码来源:SqlCaseExpression.cs

示例4: VisitChildren

 protected override Expression VisitChildren (ExpressionTreeVisitor visitor)
 {
   var newExpression = visitor.VisitExpression (_expression);
   if (newExpression != _expression)
     return new SqlExistsExpression (newExpression);
   else
     return this;
 }
开发者ID:re-motion,项目名称:Relinq-SqlBackend,代码行数:8,代码来源:SqlExistsExpression.cs

示例5: VisitChildren

		protected override Expression VisitChildren(ExpressionTreeVisitor visitor)
		{
			var newExpression = visitor.VisitExpression(Expression);

			return newExpression != Expression
					   ? CreateNew(newExpression)
					   : this;
		}
开发者ID:NikGovorov,项目名称:nhibernate-core,代码行数:8,代码来源:NhAggregatedExpression.cs

示例6: VisitChildren

        protected override Expression VisitChildren(ExpressionTreeVisitor visitor)
        {
            var newExpression = visitor.VisitExpression(_operand);

            return newExpression != _operand
                ? new NotNullableExpression(newExpression)
                : this;
        }
开发者ID:aishaloshik,项目名称:EntityFramework,代码行数:8,代码来源:NotNullableExpression.cs

示例7: VisitChildren

		protected override Expression VisitChildren(ExpressionTreeVisitor visitor)
		{
			var arguments = visitor.VisitAndConvert(Arguments, "VisitNhNew");

			return arguments != Arguments
					   ? new NhNewExpression(Members, arguments)
					   : this;
		}
开发者ID:NikGovorov,项目名称:nhibernate-core,代码行数:8,代码来源:NhNewExpression.cs

示例8: VisitChildren

 protected override Expression VisitChildren (ExpressionTreeVisitor visitor)
 {
   var newPrimaryKeyExpression = visitor.VisitExpression (_identityExpression);
   if (newPrimaryKeyExpression != _identityExpression)
     return new SqlEntityConstantExpression (Type, _value, newPrimaryKeyExpression);
   else
     return this;
 }
开发者ID:re-motion,项目名称:Relinq-SqlBackend,代码行数:8,代码来源:SqlEntityConstantExpression.cs

示例9: VisitChildren

        protected override Expression VisitChildren(ExpressionTreeVisitor visitor)
        {
            var newPattern = visitor.VisitExpression(pattern);

            if (Equals(pattern, newPattern)) return this;

            return new AllowSpecialCharactersExpression(newPattern);
        }
开发者ID:Zaixu,项目名称:Lucene.Net.Linq,代码行数:8,代码来源:AllowSpecialCharactersExpression.cs

示例10: VisitChildren

 protected override Expression VisitChildren (ExpressionTreeVisitor visitor)
 {
   var newExpressions = visitor.VisitAndConvert(_expressions, "VisitChildren");
   if (newExpressions != Expressions)
     return new SqlCompositeCustomTextGeneratorExpression (Type, newExpressions.ToArray());
   else
     return this;
 }
开发者ID:re-motion,项目名称:Relinq-SqlBackend,代码行数:8,代码来源:SqlCompositeCustomTextGeneratorExpression.cs

示例11: Generate

    public override void Generate (ISqlCommandBuilder commandBuilder, ExpressionTreeVisitor textGeneratingExpressionVisitor, ISqlGenerationStage stage)
    {
      ArgumentUtility.CheckNotNull ("commandBuilder", commandBuilder);
      ArgumentUtility.CheckNotNull ("textGeneratingExpressionVisitor", textGeneratingExpressionVisitor);
      ArgumentUtility.CheckNotNull ("stage", stage);

      textGeneratingExpressionVisitor.VisitList (_expressions, textGeneratingExpressionVisitor.VisitExpression);
    }
开发者ID:re-motion,项目名称:Relinq-SqlBackend,代码行数:8,代码来源:SqlCompositeCustomTextGeneratorExpression.cs

示例12: VisitChildren

 protected override Expression VisitChildren (ExpressionTreeVisitor visitor)
 {
   var newColumns = visitor.VisitAndConvert (Columns, "VisitChildren");
   if (newColumns != Columns)
     return new SqlEntityDefinitionExpression (Type, TableAlias, null, IdentityExpressionGenerator, newColumns.ToArray ());
   else
     return this;
 }
开发者ID:re-motion,项目名称:Relinq-SqlBackend,代码行数:8,代码来源:SqlEntityDefinitionExpression.cs

示例13: VisitChildren

 protected override Expression VisitChildren (ExpressionTreeVisitor visitor)
 {
   var newChild = visitor.VisitExpression (Child);
   if (newChild != Child)
     return new CustomCompositeExpression (Type, newChild);
   else
     return this;
 }
开发者ID:re-motion,项目名称:Relinq-SqlBackend,代码行数:8,代码来源:CustomCompositeExpression.cs

示例14: Generate

    public override void Generate (ISqlCommandBuilder commandBuilder, ExpressionTreeVisitor textGeneratingExpressionVisitor, ISqlGenerationStage stage)
    {
      ArgumentUtility.CheckNotNull ("commandBuilder", commandBuilder);
      ArgumentUtility.CheckNotNull ("textGeneratingExpressionVisitor", textGeneratingExpressionVisitor);
      ArgumentUtility.CheckNotNull ("stage", stage);

      commandBuilder.Append (_sqlText);
    }
开发者ID:re-motion,项目名称:Relinq-SqlBackend,代码行数:8,代码来源:SqlCustomTextExpression+.cs

示例15: VisitChildren

		protected override Expression VisitChildren(ExpressionTreeVisitor visitor)
		{
			var newExpression = visitor.VisitExpression(Expression);

			return newExpression != Expression
				? new NhNominatedExpression(newExpression)
				: this;
		}
开发者ID:marchlud,项目名称:nhibernate-core,代码行数:8,代码来源:NhNominatedExpression.cs


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