public void QueryBuilderShouldReturnPathWithApiVersionAndQuery() { var url = new QueryUrlBuilder("v45.0") .WithQuery("SELECT Id FROM Account") .ToString(); Assert.AreEqual("/services/data/v45.0/query/?q=SELECT Id FROM Account", url); }
public async Task <List <T> > Query <T>(string query) { var url = new QueryUrlBuilder(apiVersion) .WithQuery(query) .ToString(); var response = await httpClient.GetAsync(url); var content = await response.Content.ReadAsStringAsync(); var result = serializer.Deserialize <QueryResult <T> >(content); return(result.Records); }
public async Task <List <T> > QueryAll <T>(string query) { var records = new List <T>(); string url = new QueryUrlBuilder(apiVersion).WithQuery(query).ToString(); var response = await httpClient.GetAsync(url); var content = await response.Content.ReadAsStringAsync(); var result = serializer.Deserialize <QueryResult <T> >(content); records.AddRange(result.Records); while (!string.IsNullOrEmpty(result.NextRecordsUrl)) { result = await QueryMore <T>(result.NextRecordsUrl); records.AddRange(result.Records); } return(records); }