static async void RequestMoreToLuis(string query, Queryparts breakTitle) { var client = new HttpClient(); // The request header contains your subscription key client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", messages.subscriptionKey); for (int i = 0; i < breakTitle.part.Length; i++) { var uri = "https://westus.api.cognitive.microsoft.com/luis/v2.0/apps/" + messages.luisAppId + "?q=" + HttpUtility.UrlEncode(breakTitle.part[i]); var response = await client.GetAsync(uri); var strResponseContent = await response.Content.ReadAsStringAsync(); // Display the JSON result from LUIS //Console.WriteLine(strResponseContent.ToString()); string body = strResponseContent.Replace("'", "\""); Rootobject title = JsonConvert.DeserializeObject <Rootobject>(body); string[] features = title.getFeatures(); if (features[1] == "None" && i < breakTitle.part.Length - 1) { breakTitle.part[i + 1] = breakTitle.part[i] + "," + breakTitle.part[i + 1]; } else { SaveToFile(title, features); } } }
public static void MakeRequest(string q) { q = q.Replace("'", ""); //q = q.Replace("£", "$"); Queryparts BreakTitles = new Queryparts(); BreakTitles = BreakTitles.BreakQuery(q); if (BreakTitles.isBroken == true && BreakTitles.seperator != messages.Comma) { if (BreakTitles.part[1].ToLower().Trim().Equals(messages.FreeShipping)) { RequestOneToLuis(q, BreakTitles.part[0], messages.OfferTypePlusFreeship); } else if (BreakTitles.part[1].ToLower().Trim().Contains(messages.FreeShipping)) { RequestTwoToLuis(q, BreakTitles.part[0], BreakTitles.part[1], messages.RestrictionsIndep); } else if (BreakTitles.part[1].ToLower().Contains(messages.Cashback)) { RequestTwoToLuis(q, BreakTitles.part[0], BreakTitles.part[1], messages.RestrictionOfp2Top1); } else { RequestTwoToLuis(q, BreakTitles.part[0], BreakTitles.part[1], messages.RestrictionsIndep); } } else if (BreakTitles.isBroken == true) { RequestMoreToLuis(q, BreakTitles); } else { RequestOneToLuis(q, q, messages.RestrictionsIndep); } }