protected void egvSW_RowDeleting(object sender, GridViewDeleteEventArgs e) { int id = (int)egvSW.DataKeys[e.RowIndex].Value; WordSearchManager.DeleteWords(id); BindWords(); }
protected void egvSW_RowUpdating(object sender, GridViewUpdateEventArgs e) { GridViewRow gvr = egvSW.Rows[e.RowIndex]; int k = (int)egvSW.DataKeys[e.RowIndex].Value; string count = (gvr.FindControl("txtCount") as TextBox).Text.Trim(); decimal c = 0; decimal.TryParse(count, out c); WordSearchManager.UpdateWordHitCount(k, c); egvSW.EditIndex = -1; BindWords(); }
public void WordSearchManager_LoadDirectory_Test() { // Arrange var loadDirsMock = new Mock <ILoadDirectories>(); var searchWordsMock = new Mock <ISearchWords>(); var testee = new WordSearchManager(loadDirsMock.Object, searchWordsMock.Object); // Act testee.LoadDirectory("testDir"); // Assert loadDirsMock.Verify(v => v.GetFiles("testDir"), Times.Once); }
public void WordSearchManager_SearchMatches_MultipleFiles_Test() { // Arrange var loadDirsMock = new Mock <DirectoryLoader>(TestUtils.FileSystemBuilder(10)); var searchWordsMock = new Mock <ISearchWords>(); var testee = new WordSearchManager(loadDirsMock.Object, searchWordsMock.Object); testee.LoadDirectory("testDir"); // Act testee.SearchMatches("pattern"); // Assert searchWordsMock.Verify(v => v.SearchWordsInFile(It.IsAny <string>(), "pattern"), Times.Exactly(10)); }
public void WordSearchManager_SearchMatches_NoFiles_Test() { // Arrange var loadDirsMock = new Mock <DirectoryLoader>(TestUtils.FileSystemBuilder(0)); var searchWordsMock = new Mock <ISearchWords>(); var testee = new WordSearchManager(loadDirsMock.Object, searchWordsMock.Object); testee.LoadDirectory("testDir"); // Act testee.SearchMatches("pattern"); // Assert searchWordsMock.Verify(v => v.SearchWordsInFile("file", "pattern"), Times.Never); }
protected void btnSave_Click(object sender, EventArgs e) { WordStatistic ws = new WordStatistic(); decimal i = 0; decimal.TryParse(txtCount.Text, out i); ws.HitCount = i; ws.SearchWord = txtSearchWord.Text.Trim(); if (WordSearchManager.SaveStatistic(ws)) { base.ExecuteJs("msg('成功添加一条新的搜索关键词记录!',true)", false); } else { base.ExecuteJs("msg('增加搜索关键词记录时失败!')", false); } }
void BindHotSearch() { List <String> searchWords = WordSearchManager.GetHotWords(); if (searchWords.Count == 0) { ltHotSearch.Text = "--"; } else { searchWords = searchWords.GetRange(0, Math.Min(5, searchWords.Count)); string src = "<a href=\"" + GlobalSettings.RelativeWebRoot + "pages/view.aspx?product-search&w={2}\" title=\"{0}\">{1}</a>"; StringBuilder sb = new StringBuilder(); foreach (string s in searchWords) { sb.AppendFormat(src, s, GlobalSettings.SubString(s, 10), HttpUtility.UrlEncode(s)); } ltHotSearch.Text = sb.ToString(); } }
public void WordSearchManager_Test() { // Arrange int expectedFiles = 20; int expectedMatchesPerFile = 5; var filesystem = TestUtils.FileSystemBuilder(expectedFiles, "pattern", expectedMatchesPerFile); var loadDirs = new DirectoryLoader(filesystem); var searchWords = new WordSearcher(filesystem); var testee = new WordSearchManager(loadDirs, searchWords); // Act var numberOfFiles = testee.LoadDirectory("testDir"); var topTen = testee.SearchMatches("pattern"); // Assert Assert.AreEqual(expectedFiles, numberOfFiles); Assert.AreEqual(10, topTen.Count); topTen.ToList().ForEach((kvp) => Assert.AreEqual(expectedMatchesPerFile, kvp.Value)); }
protected void Button37_Click(object sender, EventArgs e) { lblCacheTip.Text = WordSearchManager.GetWordSuggest("t", 5).Count.ToString(); //List<ArticleCategory> categories = ArticleManager.GetAllCategories(); }
public void ProcessRequest(HttpContext context) { string msg = string.Empty; bool suc = false; try { string curUser = string.Empty; if (context.Profile.IsAnonymous) { curUser = context.Profile.UserName; } else { curUser = Users.GetUniqueId(context.Profile.UserName).ToString(); } NameValueCollection req = context.Request.QueryString; string action = req["action"]; switch (action) { case "getFriendLinks": try { suc = true; msg = Newtonsoft.Json.JavaScriptConvert.SerializeObject(FriendLinks.FriendLinkGet()); } catch (Exception ex) { suc = false; msg = ex.Message; } break; case "addShopcart": int pid = int.Parse(req["d"]); int amount = int.Parse(req["c"]); int mid = int.Parse(req["m"]); Shopping shop = new Shopping() { CreateTime = DateTime.Now, UpdateTime = DateTime.Now, ModelID = mid, ProductID = pid, Quantity = amount, ShoppingMemo = string.Empty, UserID = curUser }; suc = Shoppings.ShoppingAdd(shop); break; case "getPSuggestion": string v = req["value"]; List <string> sw = WordSearchManager.GetWordSuggest(v, 10); suc = true; msg = Newtonsoft.Json.JavaScriptConvert.SerializeObject(sw); break; case "getStatistic": List <WordStatistic> wss = WordSearchManager.GetStatistic(GlobalSettings.MinValue, GlobalSettings.MaxValue); wss = wss.GetRange(0, Math.Min(10, wss.Count)); suc = true; msg = Newtonsoft.Json.JavaScriptConvert.SerializeObject(wss); break; case "batchDelete": int i1 = Products.BatchOperation(req["ids"], 2, int.Parse(curUser)); if (i1 < 0) { msg = "操作失败,系统数据错误,请联系管理员!"; } else { msg = "操作成功!"; } suc = true; break; case "batchPublish": int i2 = Products.BatchOperation(req["ids"], 1, int.Parse(curUser)); if (i2 < 0) { msg = "操作失败,系统数据错误,请联系管理员!"; } else { msg = "操作成功!"; } suc = true; break; case "batchCopy": int i3 = Products.BatchOperation(req["ids"], 3, int.Parse(curUser)); if (i3 < 0) { msg = "操作失败,系统数据错误,请联系管理员!"; } else { msg = "操作成功!"; } suc = true; break; case "batchTruncate": int i4 = Products.BatchOperation(req["ids"], 4, int.Parse(curUser)); if (i4 < 0) { msg = "操作失败,系统数据错误,请联系管理员!"; } else { msg = "操作成功!"; } suc = true; break; } context.Response.Write("{msg:'" + msg + "',suc:" + suc.ToString().ToLower() + "}"); } catch (Exception ex) { context.Response.Write("{msg:'" + ex.Message + "',suc:false}"); } }
public void Execute(XmlNode node) { WordSearchManager.Statistic(); }
void BindWords() { egvSW.DataSource = WordSearchManager.GetStatistic(GlobalSettings.MinValue, GlobalSettings.MaxValue); egvSW.DataBind(); }
void context_UserSearchWord(string searchWord) { WordSearchManager.Insert(searchWord); }