コード例 #1
0
            public object GetValueToCompare(SearchItem obj)
            {
                var value = obj.GetValue(selector);

                if (value != null)
                {
                    return(value);
                }
                return(obj.id);
            }
コード例 #2
0
        private static Item CreateItem(SearchItem e, SearchContext context, IEnumerable <SearchColumn> columns)
        {
            var v  = e.GetValue(null, context);
            var ri = new Item()
            {
                id = e.id,
            };

            var fields = new HashSet <Field>();

            foreach (var fieldName in e.GetFieldNames())
            {
                fields.Add(new Field(fieldName, e.GetValue(fieldName, context)));
            }

            foreach (var column in columns)
            {
                fields.Add(new Field(column.selector, column.ResolveValue(e, context)));
            }
            ri.fields = fields.ToArray();
            return(ri);
        }