@@ -90,10 +90,10 @@ public virtual IQueryable<TEntity> Get()
9090 /// <inheritdoc />
9191 public virtual IQueryable < TEntity > Filter ( IQueryable < TEntity > entities , FilterQuery filterQuery )
9292 {
93- if ( _resourceDefinition != null )
93+ if ( _resourceDefinition != null )
9494 {
9595 var defaultQueryFilters = _resourceDefinition . GetQueryFilters ( ) ;
96- if ( defaultQueryFilters != null && defaultQueryFilters . TryGetValue ( filterQuery . Attribute , out var defaultQueryFilter ) == true )
96+ if ( defaultQueryFilters != null && defaultQueryFilters . TryGetValue ( filterQuery . Attribute , out var defaultQueryFilter ) == true )
9797 {
9898 return defaultQueryFilter ( entities , filterQuery . Value ) ;
9999 }
@@ -106,17 +106,17 @@ public virtual IQueryable<TEntity> Filter(IQueryable<TEntity> entities, FilterQu
106106 public virtual IQueryable < TEntity > Sort ( IQueryable < TEntity > entities , List < SortQuery > sortQueries )
107107 {
108108 if ( sortQueries != null && sortQueries . Count > 0 )
109- return entities . Sort ( sortQueries ) ;
110-
111- if ( _resourceDefinition != null )
109+ return entities . Sort ( _jsonApiContext , sortQueries ) ;
110+
111+ if ( _resourceDefinition != null )
112112 {
113113 var defaultSortOrder = _resourceDefinition . DefaultSort ( ) ;
114- if ( defaultSortOrder != null && defaultSortOrder . Count > 0 )
114+ if ( defaultSortOrder != null && defaultSortOrder . Count > 0 )
115115 {
116- foreach ( var sortProp in defaultSortOrder )
117- {
116+ foreach ( var sortProp in defaultSortOrder )
117+ {
118118 // this is dumb...add an overload, don't allocate for no reason
119- entities . Sort ( new SortQuery ( sortProp . Item2 , sortProp . Item1 ) ) ;
119+ entities . Sort ( _jsonApiContext , new SortQuery ( sortProp . Item2 , sortProp . Item1 . PublicAttributeName ) ) ;
120120 }
121121 }
122122 }
@@ -189,10 +189,10 @@ private void AttachHasManyPointers(TEntity entity)
189189 var relationships = _jsonApiContext . HasManyRelationshipPointers . Get ( ) ;
190190 foreach ( var relationship in relationships )
191191 {
192- if ( relationship . Key is HasManyThroughAttribute hasManyThrough )
192+ if ( relationship . Key is HasManyThroughAttribute hasManyThrough )
193193 AttachHasManyThrough ( entity , hasManyThrough , relationship . Value ) ;
194194 else
195- AttachHasMany ( relationship . Key as HasManyAttribute , relationship . Value ) ;
195+ AttachHasMany ( relationship . Key as HasManyAttribute , relationship . Value ) ;
196196 }
197197 }
198198
@@ -289,15 +289,15 @@ public virtual async Task<bool> DeleteAsync(TId id)
289289 /// <inheritdoc />
290290 public virtual IQueryable < TEntity > Include ( IQueryable < TEntity > entities , string relationshipName )
291291 {
292- if ( string . IsNullOrWhiteSpace ( relationshipName ) ) throw new JsonApiException ( 400 , "Include parameter must not be empty if provided" ) ;
292+ if ( string . IsNullOrWhiteSpace ( relationshipName ) ) throw new JsonApiException ( 400 , "Include parameter must not be empty if provided" ) ;
293293
294294 var relationshipChain = relationshipName . Split ( '.' ) ;
295295
296296 // variables mutated in recursive loop
297297 // TODO: make recursive method
298298 string internalRelationshipPath = null ;
299299 var entity = _jsonApiContext . RequestEntity ;
300- for ( var i = 0 ; i < relationshipChain . Length ; i ++ )
300+ for ( var i = 0 ; i < relationshipChain . Length ; i ++ )
301301 {
302302 var requestedRelationship = relationshipChain [ i ] ;
303303 var relationship = entity . Relationships . FirstOrDefault ( r => r . PublicRelationshipName == requestedRelationship ) ;
@@ -315,7 +315,7 @@ public virtual IQueryable<TEntity> Include(IQueryable<TEntity> entities, string
315315 internalRelationshipPath = ( internalRelationshipPath == null )
316316 ? relationship . RelationshipPath
317317 : $ "{ internalRelationshipPath } .{ relationship . RelationshipPath } ";
318-
318+
319319 if ( i < relationshipChain . Length )
320320 entity = _jsonApiContext . ResourceGraph . GetContextEntity ( relationship . Type ) ;
321321 }
0 commit comments