25 lines
		
	
	
		
			667 B
		
	
	
	
		
			C#
		
	
	
			
		
		
	
	
			25 lines
		
	
	
		
			667 B
		
	
	
	
		
			C#
		
	
	
| using System.Linq.Expressions;
 | |
| 
 | |
| namespace IRaCIS.Core.Infrastructure.ExpressionExtend
 | |
| {
 | |
|     /// <summary>
 | |
|     /// 建立新表达式
 | |
|     /// </summary>
 | |
|     internal class NewExpressionVisitor : ExpressionVisitor
 | |
|     {
 | |
|         public ParameterExpression _NewParameter { get; private set; }
 | |
|         public NewExpressionVisitor(ParameterExpression param)
 | |
|         {
 | |
|             this._NewParameter = param;
 | |
|         }
 | |
|         public Expression Replace(Expression exp)
 | |
|         {
 | |
|             return this.Visit(exp);
 | |
|         }
 | |
|         protected override Expression VisitParameter(ParameterExpression node)
 | |
|         {
 | |
|             return this._NewParameter;
 | |
|         }
 | |
|     }
 | |
| }
 |