private ApiResponse DoAutoComplete(AutoCompleteQuery query) { query = query ?? new AutoCompleteQuery() { SearchType = "credential" }; try { //HttpContext.Current.Response.Clear(); //HttpContext.Current.Response.BufferOutput = true; //HttpContext.Current.Response.AppendHeader( "Access-Control-Allow-Origin", "*" ); //string contentType = "application/json"; //HttpContext.Current.Response.ContentType = contentType; //HttpContext.Current.Response.ContentEncoding = contentType == "application/json" ? Encoding.UTF8 : HttpContext.Current.Response.ContentEncoding; var results = SearchServices.DoAutoComplete(query.SearchType, query.FilterURI, query.Text, query.WidgetId); var acr = new AutoCompleteResponse(); acr.Items = results.Select(m => new FilterItem() { Label = m.ToString(), Text = m.ToString(), URI = query.FilterURI, InterfaceType = "interfaceType:Text" }).ToList(); return(new ApiResponse(acr, true, null)); } catch (Exception ex) { return(new ApiResponse(null, false, new List <string>() { "Error processing autocomplete request: " + ex.Message })); } }
private string BuildCompletion(AutoCompleteResponse completion) { string result = completion.Snippet; if (completion.ReturnType != null) { result += " : " + completion.ReturnType; } return(result); }
private AutoCompleteResponse MakeAutoCompleteResponse(ISymbol symbol) { var response = new AutoCompleteResponse(); response.CompletionText = symbol.Name; // TODO: Do something more intelligent here response.DisplayText = symbol.ToDisplayString(SymbolDisplayFormat.MinimallyQualifiedFormat); return(response); }
internal static void Test() { Console.WriteLine("Facets inside the hints"); DataContractJsonSerializer dcjs = new DataContractJsonSerializer(typeof(AutoCompleteResponse)); MemoryStream ms = new MemoryStream(Encoding.Unicode.GetBytes(json)); AutoCompleteResponse obj = (AutoCompleteResponse)dcjs.ReadObject(ms); ms.Close(); Console.WriteLine(obj); Console.WriteLine(); }
AutoCompleteResponse IAutoCompleteFactory.AutoCompleteResult(AutoCompleteDomain autoCompleteDomain) { AutoCompleteResponse autoCompleteResponse = new AutoCompleteResponse(); try { using (sqlConnection = new SqlConnection(DbConnection.connectionString)) { sqlConnection.Open(); SqlCommand sqlCommand = new SqlCommand("[dbo].[AutoComplete]", sqlConnection) { CommandType = CommandType.StoredProcedure }; sqlCommand.Parameters.AddRange(new[] { new SqlParameter("@Id", autoCompleteDomain.Id), new SqlParameter("@Value", autoCompleteDomain.value), new SqlParameter("@Label", autoCompleteDomain.label), new SqlParameter("@ParentCd", autoCompleteDomain.ParentCd), new SqlParameter("@Type", autoCompleteDomain.type), }); SqlDataAdapter sqlDataAdapter = new SqlDataAdapter(); DataSet dataSet = new DataSet(); sqlDataAdapter.SelectCommand = sqlCommand; sqlDataAdapter.Fill(dataSet); if (dataSet != null && dataSet.Tables[0].Rows.Count > 0) { foreach (DataRow dataRow in dataSet.Tables[0].Rows) { autoCompleteResponse.autoCompleteResults.Add(new AutoCompleteDomain() { Id = Convert.ToInt32(dataRow["Id"]), Name = autoCompleteDomain.Name, Desc = autoCompleteDomain.Desc, label = Convert.ToString(dataRow["label"]), Cd = Convert.ToString(dataRow["Cd"]), value = Convert.ToString(dataRow["value"]), type = autoCompleteDomain.type, ParentCd = autoCompleteDomain.ParentCd, }); } } } } catch (Exception ex) { throw ex; } return(autoCompleteResponse); }
private AutoCompleteResponse MakeAutoCompleteResponse(AutoCompleteRequest request, ISymbol symbol, bool includeOptionalParams = true) { var displayNameGenerator = new SnippetGenerator(); displayNameGenerator.IncludeMarkers = false; displayNameGenerator.IncludeOptionalParameters = includeOptionalParams; var response = new AutoCompleteResponse(); response.CompletionText = symbol.Name; // TODO: Do something more intelligent here response.DisplayText = displayNameGenerator.Generate(symbol); if (request.WantDocumentationForEveryCompletionResult) { response.Description = DocumentationConverter.ConvertDocumentation(symbol.GetDocumentationCommentXml(), _options.FormattingOptions.NewLine); } if (request.WantReturnType) { response.ReturnType = ReturnTypeFormatter.GetReturnType(symbol); } if (request.WantKind) { response.Kind = symbol.GetKind(); } if (request.WantSnippet) { var snippetGenerator = new SnippetGenerator(); snippetGenerator.IncludeMarkers = true; snippetGenerator.IncludeOptionalParameters = includeOptionalParams; response.Snippet = snippetGenerator.Generate(symbol); } if (request.WantMethodHeader) { response.MethodHeader = displayNameGenerator.Generate(symbol); } return(response); }
public async Task <IActionResult> Search(string symbol) { AutoCompleteResponse response = await _YahooFinanceClient.Search(symbol); List <InstrumentSearchResult> results = new List <InstrumentSearchResult>(); foreach (AutoCompleteResult result in response.ResultSet.Result) { InstrumentSearchResult r = new InstrumentSearchResult(); r.Exchange = result.Exch; r.Symbol = result.Symbol; r.Type = MapType(result.Type); r.Name = result.Name; results.Add(r); } return(Ok(results.ToArray())); }
private AutoCompleteResponse MakeAutoCompleteResponse(AutoCompleteRequest request, ISymbol symbol, bool includeOptionalParams = true) { var response = new AutoCompleteResponse(); response.CompletionText = symbol.Name; // TODO: Do something more intelligent here response.DisplayText = symbol.ToDisplayString(SymbolDisplayFormat.MinimallyQualifiedFormat); if (request.WantDocumentationForEveryCompletionResult) { response.Description = symbol.GetDocumentationCommentXml(); } if (request.WantReturnType) { response.ReturnType = ReturnTypeFormatter.GetReturnType(symbol); } if (request.WantSnippet) { var snippetGenerator = new SnippetGenerator(); snippetGenerator.IncludeMarkers = true; snippetGenerator.IncludeOptionalParameters = includeOptionalParams; response.Snippet = snippetGenerator.GenerateSnippet(symbol); } if (request.WantMethodHeader) { var snippetGenerator = new SnippetGenerator(); snippetGenerator.IncludeMarkers = false; snippetGenerator.IncludeOptionalParameters = includeOptionalParams; response.MethodHeader = snippetGenerator.GenerateSnippet(symbol); } return(response); }
public async Task <AutoCompleteResponse> Search(string query) { HttpRequestMessage request = new HttpRequestMessage { Method = HttpMethod.Get, RequestUri = new Uri($"https://yfapi.net/v6/finance/autocomplete?lang=en&query={query}"), Headers = { { "x-api-key", _Configuration.GetValue <string>("financeapi-key") }, }, }; using (HttpResponseMessage response = await _Client.SendAsync(request)) { response.EnsureSuccessStatusCode(); string json = await response.Content.ReadAsStringAsync(); AutoCompleteResponse autoCompleteResponse = JsonConvert.DeserializeObject <AutoCompleteResponse>(json); return(autoCompleteResponse); } }