/// <summary> /// 初始化表达式 /// </summary> /// <param name="re"></param> /// <param name="exp"></param> private void Init(ResolveExpress re, Expression exp) { ResolveExpress.MemberType type = ResolveExpress.MemberType.None; //解析表达式 this.SqlWhere = string.Format(" AND {0} ", re.CreateSqlElements(exp, ref type, true)); //还原bool值 foreach (var item in ConstantBoolDictionary) { if (this.SqlWhere.IsValuable()) { this.SqlWhere = this.SqlWhere.Replace(item.Key.ToString(), item.ConditionalValue); } } }