У меня есть индекс, но у него много мусорных данных. То, что я надеюсь достичь, - это система голосования, в которой больше голосов приравнивается к более высокому значению повышения. К сожалению, значения повышения не сохраняются обратно в индекс после того, как пользователь отправит голосование.Lucene.Net постоянные значения повышения
Это пробой кода для моей функции Boost, есть ли у кого-нибудь какие-либо идеи относительно того, что я делаю неправильно? Я использовал explain(), но у него нет ничего, связанного с повышающим значением.
BoostUp(int documentId)
{
IndexSearcher searcher = new IndexSearcher(dir);
Document oldDoc = search.doc(documentId);
//get all the stored information from old document
Document updatedDocument = new Document();
//Add fields containing data from old document.
updatedDocument.Boost = oldDoc.Boost * 1.5F;
IndexWriter writer = new IndexWriter(dir, new StandardAnalyzer(Version.LUCENE_30), false, MaxFieldLength.LIMITED);
Term uniqueTerm = new term("content_id", content_id_from_old_document);
writer.UpdateDocument(uniqueTerm, updatedDocument);
writer.Commit();
writer.Dispose();
}
Я не ожидал, что большой обходной путь. Благодаря!! [Ссылка на документацию] (https://lucene.apache.org/core/3_6_0/api/all/org/apache/lucene/document/Document.html#getBoost()) –