Ejemplo n.º 1
0
        public static QueryContainer GetQuery(Expression expression, MappingIndex mappingIndex)
        {
            var parameter = new ExpressionParameter {
                CurrentExpression = expression, Context = new ExpressionContext(mappingIndex)
            };

            new BaseResolve(parameter).Start();
            return(parameter.Context.QueryContainer);
        }
Ejemplo n.º 2
0
 public QueryableProvider(IElasticClient client)
 {
     _queryBuilder = new QueryBuilder <T>();
     _mappingIndex = _queryBuilder.GetMappingIndex();
     _request      = new SearchRequest(_mappingIndex.IndexName)
     {
         Size = 10000
     };
     _client = client;
 }
Ejemplo n.º 3
0
        private static MappingIndex InitMappingInfo(Type type)
        {
            var mapping = new MappingIndex {
                Type = type, IndexName = type.Name
            };

            foreach (var property in type.GetProperties())
            {
                mapping.Columns.Add(new MappingColumn
                {
                    PropertyInfo = property.PropertyType,
                    PropertyName = property.Name,
                    SearchName   = FiledHelp.GetValues(property.PropertyType.Name, property.Name)
                });
            }
            return(mapping);
        }
Ejemplo n.º 4
0
 public QueryBuilder()
 {
     _mappingIndex = InitMappingInfo();
 }
Ejemplo n.º 5
0
 public ExpressionContext(MappingIndex mappingIndex)
 {
     Mapping = mappingIndex;
 }