public static async Task <PaginatedCollection <G> > GetRelatedModelPaginationAsync <G>(string relation, int?id, CancellationToken cancellationToken = default) { RouteAttribute routeAttribute = typeof(T).GetCustomAttributes(false).FirstOrDefault(x => x.GetType() == typeof(RouteAttribute)) as RouteAttribute; string url = routeAttribute.GetRelationshipRoute(id, relation); RestRequest request = new RestRequest(url, Method.GET, DataFormat.Json); IRestResponse <PaginatedCollection <G> > restResponse = await DataConnection.RequestAsync <PaginatedCollection <G> >(request, cancellationToken); return(restResponse.Data); }
public virtual async Task <G> PostRelatedAsync <G>(string relation, int?id, CancellationToken cancellationToken = default) { RouteAttribute routeAttribute = typeof(T).GetCustomAttributes(false).FirstOrDefault(x => x.GetType() == typeof(RouteAttribute)) as RouteAttribute; string url = routeAttribute.GetRelationshipRoute(id, relation); RestRequest request = new RestRequest(url, Method.POST, DataFormat.Json); request.AddJsonBody(this); IRestResponse <G> restResponse = await DataConnection.RequestAsync <G>(request, cancellationToken); return(restResponse.Data); }