Esempio n. 1
0
        async Task UpdateKBAsync(string kb, KBAddJson new_kb)
        {
            var response = await PostUpdateKB(kb, new_kb);

            var operation = response.headers.GetValues("Location").First();


            var done = false;

            while (true != done)
            {
                response = await GetStatus(operation);

                String state = response.response.operationState;
                if (state.CompareTo("Running") == 0 || state.CompareTo("NotStarted") == 0)
                {
                    //var wait = response.headers.GetValues("Retry-After").First();
                    //Console.WriteLine("Waiting " + wait + " seconds...");
                    Thread.Sleep(1000);
                }
                else
                {
                    Console.WriteLine("Press any key to continue.");
                    done = true;
                }
            }

            //PUBLISH

            await publishRequestAsync();

            // END
        }
Esempio n. 2
0
        async Task <Response> Patch(Uri uri, KBAddJson new_kb)
        {
            using (var client = new HttpClient())
                using (var request = new HttpRequestMessage())
                {
                    request.Method     = new HttpMethod("PATCH");
                    request.RequestUri = uri;
                    //request.Content = new StringContent(body, Encoding.UTF8, "application/json");
                    request.Content = new StringContent(new JavaScriptSerializer().Serialize(new_kb), Encoding.UTF8, "application/json");
                    request.Headers.Add("Ocp-Apim-Subscription-Key", key);

                    var response = await client.SendAsync(request);

                    var responseBody = await response.Content.ReadAsStringAsync();

                    return(new Response(response.Headers, null));
                }
        }
Esempio n. 3
0
 async Task <Response> PostUpdateKB(string kb, KBAddJson new_kb)
 {
     return(await Patch(uri, new_kb));
 }
Esempio n. 4
0
        public async Task UpdateAsync(string question, string answer)
        {
            KBAddJson new_kb = new KBAddJson(question, answer);

            await UpdateKBAsync(kb, new_kb);
        }