public static async Task <List <T> > GetAsync(CancellationToken cancellationToken = default) { RouteAttribute routeAttribute = typeof(T).GetCustomAttributes(false).FirstOrDefault(x => x.GetType() == typeof(RouteAttribute)) as RouteAttribute; string url = routeAttribute.GetIndexRoute(); RestRequest request = new RestRequest(url, Method.GET, DataFormat.Json); IRestResponse <List <T> > restResponse = await DataConnection.RequestAsync <List <T> >(request, cancellationToken); return(restResponse.Data); }
public virtual async Task <T> CreateAsync(CancellationToken cancellationToken = default) { RouteAttribute routeAttribute = this.GetType().GetCustomAttributes(false).FirstOrDefault(x => x.GetType() == typeof(RouteAttribute)) as RouteAttribute; string url = routeAttribute.GetIndexRoute(); RestRequest request = new RestRequest(url, Method.POST, DataFormat.Json); request.AddJsonBody(this); IRestResponse <T> restResponse = await DataConnection.RequestAsync <T>(request, cancellationToken); this.ID = (restResponse.Data as DataPacket <T>).ID; this.CreatedAt = (restResponse.Data as DataPacket <T>).CreatedAt; this.UpdatedAt = (restResponse.Data as DataPacket <T>).UpdatedAt; return(restResponse.Data); }