public Structs.SearchResult Search(Structs.SearchInput input) { var formData = new Dictionary <string, string> { { "id", "0" }, { "question", input.Keywords }, { "type", ((int)input.Type).ToString() } }; var strret = POST(SearchUrl, formData); var result_json = JObject.Parse(strret); return(new() { Answer = result_json.Value <string>("data"), ServerMessage = result_json.Value <string>("msg") }); }
public Structs.SearchResult Search(Structs.SearchInput input) { if (memcached) { foreach (var kvp in datastore) { if (Regex.IsMatch(kvp.Key, ".*" + input.Keywords + ".*")) { return(new Structs.SearchResult { Answer = kvp.Value, ServerMessage = "本地查询成功" }); } } } else { while (files.Length < 1) { Process.Start("explorer", Path.GetFullPath("./localdb")); EngineLib.Msgbox.Invoke("没有可用的数据库,请将本地数据库(.ldb)存入打开的文件夹。"); files = Directory.GetFiles("./localdb", "*.ldb", SearchOption.AllDirectories); } foreach (var f in files) { StreamReader sr = new StreamReader(f); do { JObject jb = JObject.Parse(sr.ReadLine()); if (Regex.IsMatch(jb.Value <string>("q"), ".*" + input.Keywords + ".*")) { return(new Structs.SearchResult { Answer = jb.Value <string>("a"), ServerMessage = "本地查询成功" }); } } while (!sr.EndOfStream); } } return(new Structs.SearchResult { Answer = "", ServerMessage = "题库中没有相关信息" }); }
public Structs.SearchResult Search(Structs.SearchInput input) { throw new NotImplementedException(); }