/// <summary> /// 创建产品索引 /// </summary> private void CreateProductIndex(string indexPath) { Product_BLL productBll = new Product_BLL(); LuceneNet lucene = new LuceneNet(indexPath); var products = productBll.GetProduct(); #region 需要添加到索引的字段 var needCreateField = new Dictionary <string, bool>(); needCreateField.Add(Utilities.GetPropertyName <Product>(f => f.PID), false); needCreateField.Add(Utilities.GetPropertyName <Product>(f => f.Description), false); needCreateField.Add(Utilities.GetPropertyName <Product>(f => f.Name), true); needCreateField.Add(Utilities.GetPropertyName <Product>(f => f.IsBest), false); needCreateField.Add(Utilities.GetPropertyName <Product>(f => f.IsHot), false); needCreateField.Add(Utilities.GetPropertyName <Product>(f => f.IsNew), false); needCreateField.Add(Utilities.GetPropertyName <Product>(f => f.IsRecommend), false); needCreateField.Add(Utilities.GetPropertyName <Product>(f => f.MarketPrice), false); needCreateField.Add(Utilities.GetPropertyName <Product>(f => f.OfficialGuarantee), false); needCreateField.Add(Utilities.GetPropertyName <Product>(f => f.SaleCount), false); needCreateField.Add(Utilities.GetPropertyName <Product>(f => f.ShowImg), false); #endregion var isCreateSuccess = lucene.CreateIndexByData <Product>(products, needCreateField, true); if (!isCreateSuccess) { //如果索引没有创建成功通知管理员 } }
public ActionResult GetIndex(string key) { var records = LuceneNet.SearchFromIndex(key); ViewBag.Records = records; return(View()); }
public ActionResult AddRecordByAdmin(Record record) { var adminStr = CookieHelper.GetCookie(HttpContext); if (!string.IsNullOrEmpty(adminStr)) { var admin = JsonConvert.DeserializeObject <User>(adminStr); record.UserId = admin.ID; record.UserName = admin.UserName; record.Summary = ControllerHelper.GetRecordSummary(record.Content); record.CreateTime = DateTime.Now; record.ModifyTime = DateTime.Now; jahomDBContext.Record.Add(record); jahomDBContext.SaveChanges(); var records = jahomDBContext.Record.OrderBy(r => r.CreateTime).ToList(); ViewBag.Records = records; LuceneNet.RecordsForCreateIndex.Enqueue(record); LuceneNet.CreateIndex(); return(View()); } else { return(Content("error")); } }
public ActionResult AddSomething(Record record) { var user = HttpContext.Items["USER"] as User; record.UserId = user.ID; record.UserName = user.UserName; record.Summary = ControllerHelper.GetRecordSummary(record.Content); record.CreateTime = DateTime.Now; record.ModifyTime = DateTime.Now; jahomDBContext.Record.Add(record); jahomDBContext.SaveChanges(); LuceneNet.RecordsForCreateIndex.Enqueue(record); LuceneNet.CreateIndex(); return(RedirectToAction("MyStory")); }