Esempio n. 1
0
 /// <summary>
 /// 问题增量索引
 /// </summary>
 /// <param name="question"></param>
 /// <param name="eventArgs"></param>
 private void AskQuestion_After(AskQuestion question, CommonEventArgs eventArgs)
 {
     if (question == null)
     {
         return;
     }
     if (askSearcher == null)
     {
         askSearcher = (AskSearcher)SearcherFactory.GetSearcher(AskSearcher.CODE);
     }
     //问题添加、删除、更新、设置精华、取消精华操作时更改索引
     if (eventArgs.EventOperationType == EventOperationType.Instance().Create())
     {
         askSearcher.Insert(question);
     }
     else if (eventArgs.EventOperationType == EventOperationType.Instance().Delete())
     {
         askSearcher.Delete(question.QuestionId);
     }
     else if (eventArgs.EventOperationType == EventOperationType.Instance().Update() || eventArgs.EventOperationType == EventOperationType.Instance().Approved() || eventArgs.EventOperationType == EventOperationType.Instance().Disapproved())
     {
         askSearcher.Update(question);
     }
     else if (eventArgs.EventOperationType == EventOperationType.Instance().SetEssential())
     {
         askSearcher.Update(question);
     }
     else if (eventArgs.EventOperationType == EventOperationType.Instance().CancelEssential())
     {
         askSearcher.Update(question);
     }
 }
Esempio n. 2
0
 /// <summary>
 /// 为问答添加标签时触发
 /// </summary>
 private void AddTagsToQuestion_BatchAfter(IEnumerable <string> senders, TagEventArgs eventArgs)
 {
     if (eventArgs.TenantTypeId == TenantTypeIds.Instance().AskQuestion())
     {
         long questionId = eventArgs.ItemId;
         if (askSearcher == null)
         {
             askSearcher = (AskSearcher)SearcherFactory.GetSearcher(AskSearcher.CODE);
         }
         askSearcher.Update(new AskService().GetQuestion(questionId));
     }
 }
Esempio n. 3
0
 /// <summary>
 /// 回答增量索引
 /// </summary>
 /// <param name="answer"></param>
 /// <param name="eventArgs"></param>
 private void AskAnswer_After(AskAnswer answer, CommonEventArgs eventArgs)
 {
     if (answer == null)
     {
         return;
     }
     if (askSearcher == null)
     {
         askSearcher = (AskSearcher)SearcherFactory.GetSearcher(AskSearcher.CODE);
     }
     //创建回答、更新回答、删除回答时更新问题索引
     if (eventArgs.EventOperationType == EventOperationType.Instance().Create() || eventArgs.EventOperationType == EventOperationType.Instance().Update() || eventArgs.EventOperationType == EventOperationType.Instance().Delete())
     {
         askSearcher.Update(answer.Question);
     }
 }