using System.Linq.Expressions;
namespace Masuit.Tools.Core.Linq
{
///
/// linq参数替换器
///
public class ParameterReplacer : ExpressionVisitor
{
///
/// linq参数替换器
///
///
public ParameterReplacer(ParameterExpression paramExpr)
{
this.ParameterExpression = paramExpr;
}
///
/// 参数表达式
///
public ParameterExpression ParameterExpression { get; private set; }
///
/// 表达式替换
///
///
///
public Expression Replace(Expression expr)
{
return this.Visit(expr);
}
///
/// 表达式参数访问
///
///
///
protected override Expression VisitParameter(ParameterExpression p)
{
return this.ParameterExpression;
}
}
}