⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 documentupdatetest.cs

📁 DotLucentet,用来做撬
💻 CS
字号:
using System;
using Lucene.Net.Analysis;
using Lucene.Net.Documents;
using Lucene.Net.Index;
using Lucene.Net.Search;
using NUnit.Framework;
namespace dotLucene.inAction.Index
{

[TestFixture]
public class DocumentUpdateTest : BaseIndexingTestCase
{
	[Test]
	public void Update()
	{
		Assert.AreEqual(1, GetHitCount("city", "Amsterdam"));
		IndexReader reader = IndexReader.Open(dir);
		reader.Delete(new Term("city", "Amsterdam"));
		reader.Close();
		Assert.AreEqual(0, GetHitCount("city", "Amsterdam"));
		IndexWriter writer = new IndexWriter(dir, GetAnalyzer(),false);
		Document doc = new Document();
		doc.Add(Field.Keyword("id", "1"));

		doc.Add(Field.UnIndexed("country", "Netherlands"));
		doc.Add(Field.UnStored("contents","Amsterdam has lots of bridges"));
		doc.Add(Field.Text("city", "Haag"));
		writer.AddDocument(doc);
		writer.Optimize();
		writer.Close();
		Assert.AreEqual(1, GetHitCount("city", "Haag"));
	}
	protected override Analyzer GetAnalyzer()
	{
		return new WhitespaceAnalyzer();
	}

	private int GetHitCount(String fieldName, String searchString)
	{
		IndexSearcher searcher = new IndexSearcher(dir);
		Term t = new Term(fieldName, searchString);
		Query query = new TermQuery(t);
		Hits hits = searcher.Search(query);
		int hitCount = hits.Length();
		searcher.Close();
		return hitCount;
	}

}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -