/// <summary> /// 使用CRLExpression从缓存中查询 /// 仅在缓存接口部署 /// </summary> /// <param name="expression"></param> /// <returns></returns> CacheServer.ResultData QueryFromAllCache(LambdaQuery.CRLQueryExpression expression) { var _CRLExpression = new CRL.LambdaQuery.CRLExpressionVisitor <TModel>().CreateLambda(expression.Expression); int total; var data = QueryFromAllCacheBase(_CRLExpression, out total, expression.PageIndex, expression.PageSize); return(new CacheServer.ResultData() { Total = total, JsonData = CoreHelper.StringHelper.SerializerToJson(data) }); }
protected void Page_Load(object sender, EventArgs e) { int m = 10; var query = new CRL.LambdaQuery.CRLExpressionVisitor<Code.ProductData>(); //var re = query.Where(b => b.ProductName.Contains("22")); var re = query.Where(b => b.ProductName.Substring(2)=="22"); //var re = query.Where(b => b.ProductName.IndexOf("22")==1); var obj = CRL.LambdaQuery.CRLQueryExpression.FromJson(re); var expression = query.CreateLambda(obj.Expression); //re = CRL.CacheServer.CacheServer.Query(obj); Response.Write(re); }
protected void Page_Load(object sender, EventArgs e) { int m = 10; var query = new CRL.LambdaQuery.CRLExpressionVisitor <Code.ProductData>(); //var re = query.Where(b => b.ProductName.Contains("22")); var re = query.Where(b => b.ProductName.Substring(2) == "22"); //var re = query.Where(b => b.ProductName.IndexOf("22")==1); var obj = CRL.LambdaQuery.CRLQueryExpression.FromJson(re); var expression = query.CreateLambda(obj.Expression); //re = CRL.CacheServer.CacheServer.Query(obj); Response.Write(re); }
/// <summary> /// 查询方法 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="expression"></param> /// <param name="total"></param> /// <param name="pageIndex"></param> /// <param name="pageSize"></param> /// <returns></returns> internal List <T> Query <T>(Expression <Func <T, bool> > expression, out int total, int pageIndex = 0, int pageSize = 0) where T : class, new() { var query = new CRL.LambdaQuery.CRLExpressionVisitor <T>(); var json = query.Where(expression, pageIndex, pageSize); var command = new Command() { CommandType = CommandType.查询, Data = json, ObjectType = typeof(T).FullName }; json = CoreHelper.StringHelper.SerializerToJson(command); var result = SendQuery(json); if (result.StartsWith("error")) { throw new Exception(result); } var resultData = (ResultData)CoreHelper.SerializeHelper.SerializerFromJSON(result, typeof(ResultData), System.Text.Encoding.UTF8); total = resultData.Total; var result2 = (List <T>)CoreHelper.SerializeHelper.SerializerFromJSON(resultData.JsonData, typeof(List <T>), System.Text.Encoding.UTF8); return(result2); }