protected internal BaseRelationship AssignCollectionAttributesAndRelationships <TAttributes, TRelationships>( IReadOnlyCollection <PatreonData> includes, PatreonCollectionResponse <TAttributes, TRelationships> baseCollection) where TRelationships : IRelationship { if (baseCollection?.Data == null) { return(this); } foreach (var collectionInstance in baseCollection.Data) { var include = includes.FirstOrDefault(x => x.Id == collectionInstance.Id) as PatreonData <TAttributes, TRelationships>; if (include != null) { collectionInstance.Attributes = include.Attributes; collectionInstance.Relationships = include.Relationships; } collectionInstance.Relationships?.AssignRelationship(includes); } return(this); }
public static PatreonCollectionResponse <A, R> CreateRelationship <A, R>(PatreonCollectionResponse <A, R> response) where R : IRelationship => new PatreonCollectionResponse <A, R> { Data = response.Data.Select(Strip), Links = response.Links, Meta = response.Meta, };