我想运行一个完全销毁然后从头开始重建我的lucene .net搜索索引的进程。
我被困在破坏部分
我打过电话:
IndexWriter.Commit(); IndexWriter.Close(); Analyzer.Close(); foreach(Directory.ListAll()中的var名称){Directory.ClearLock(name); Directory.DeleteFile(名); } Directory.Close();
但该过程失败,因为它仍然是文件'_0.cfs'
上的文件处理程序有什么想法吗?
答案 0 :(得分:0)
您是否在IIS中托管?尝试iisreset
(有时IIS会自己保留文件)。
答案 1 :(得分:0)
只需拨打IndexWriter.DeleteAll()
后跟IndexWriter.Commit()
,它就会删除索引内容并让您开始使用空索引,而已经打开的读者仍然可以读取数据直到关闭。旧文件一旦不再使用,将自动删除。