コード例 #1
0
        public static IQueryable <T> ApplyFiltersByMetadata(IQueryable <T> source, ODataMetadata oDataMetadata, ODataExpression oDataExpression, MetadataBase metadata)
        {
            KeyValuePair <FilterBase, List <LogicalFilter> > guideFilters = oDataMetadata.GetFiltersByMetadata(oDataExpression, metadata);

            return(guideFilters.Key != null?
                   source.Where(BuildFiltersExp(metadata, guideFilters.Key, guideFilters.Value)) :
                       source);
        }
コード例 #2
0
        public static List <TJoinProperty> ApplyFiltersAndSelect <TJoinProperty>(IQueryable <T> source, ODataMetadata oDataMetadata, ODataExpression oDataExpression, MetadataBase metadata, string propertyName)
        {
            IQueryable <T> queryWithFilters = ApplyFiltersByMetadata(source, oDataMetadata, oDataExpression, metadata);

            return(SelectPropertyValues <TJoinProperty>(queryWithFilters, propertyName).ToList());
        }