Exemplo n.º 1
0
        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);
        }
Exemplo n.º 2
0
        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);
        }
Exemplo n.º 3
0
        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);
        }