我一直在与Lucene.Net和FSDirectory
合作一段时间,所以我熟悉使用它的基础知识。但是,我现在正试图在可能的情况下使用RAMDirectory
来重写一些关键代码,以加快索引的使用。
只需使用适当的构造函数,就可以将现有的FSDirectory加载到RAMDirectory中。但是,我似乎无法弄清楚我是如何将它再次写回磁盘的。
我在Java版本中看到过一些静态Directory.copy()方法,但Lucene.Net似乎并不存在这种方法。
这可能吗?
更新:原来我使用的是不支持此方法的旧版Lucene.Net。官方Lucene.Net网站上的“官方二进制文件”显然已经过时了。感谢CVertex建议使用NuGet在Visual Studio中下载并安装最新版本的Lucene。
答案 0 :(得分:4)
Directory.Copy static根据Java版本
存在public static void Copy(Lucene.Net.Store.Directory src, Lucene.Net.Store.Directory dest, bool closeDirSrc)
Lucene.Net.Store.Directory
的成员也许你没有找到正确的命名空间。