2011-12-14 93 views
1

我正在嘗試關注these instructions。 我還應該提到我使用NuGet package而不是CodePlex來源。SimpleLucene無法實現接口成員

我提出這些2個錯誤:

錯誤1
'LuceneTest.Models.ProductIndexDefinition' 不實現接口成員 'SimpleLucene.IIndexDefinition.GetIndex(LuceneTest.Models.Product)'。 'LuceneTest.Models.ProductIndexDefinition.GetIndex(LuceneTest.Models.Product)'不能實現'SimpleLucene.IIndexDefinition.GetIndex(LuceneTest.Models.Product)',因爲它沒有匹配的返回類型'Lucene.Net.Index.Term 」。

錯誤2
'LuceneTest.Models.ProductIndexDefinition' 不實現接口成員 'SimpleLucene.IIndexDefinition.Convert(LuceneTest.Models.Product)'。 'LuceneTest.Models.ProductIndexDefinition.Convert(LuceneTest.Models.Product)'不能實現'SimpleLucene.IIndexDefinition.Convert(LuceneTest.Models.Product)',因爲它沒有匹配的返回類型'Lucene.Net.Documents.Document 」。

從這個代碼:

using System.Web; 
using SimpleLucene; 
using Lucene.Net.Documents; 
using Lucene.Net.Index; 

namespace LuceneTest.Models 
{ 
    public class Product 
    { 
     public int Id { get; set; } 
     public string Name { get; set; } 
    } 

    public class ProductIndexDefinition : IIndexDefinition<Product> 
    { 
     public Document Convert(Product p) 
     { 
      var document = new Document(); 
      document.Add(new Field("id", p.Id.ToString(), Field.Store.YES, Field.Index.NOT_ANALYZED)); 
      document.Add(new Field("name", p.Name, Field.Store.YES, Field.Index.ANALYZED)); 
      return document; 
     } 

     public Term GetIndex(Product p) 
     { 
      return new Term("id", p.Id.ToString()); 
     } 
    } 
} 

當我在對象資源管理器看IIndexDefinition它看起來像這樣:

public interface IIndexDefinition<T> 
    where T : class 
{ 
    Lucene.Net.Documents.Document Convert(T entity); 
    Lucene.Net.Index.Term GetIndex(T entity); 
} 

我不明白這是怎麼回事。我的意思是錯誤是說這個類沒有實現接口,因爲返回類型不匹配,但我只是沒有看到我能在哪裏或如何修復它。

+0

在我的超簡單4.0控制檯項目中出現同樣的問題。 框架中存在兩個依賴項。我認爲不同版本的文件和術語有衝突。但仍然不能解決。 'Lucene(≥2.9.2.2)'。 'Lucene.net(≥2.9.4.1)'。 – 2011-12-23 15:53:26

回答

0

問題是Nuget包不是一個有效的包。下載simplelucene的最新源代碼。您可以看到使用2.9.4.2的測試。替換你的2.9.4.1 lucene.net這個DLL。

+0

該項目不再支持或爲什麼他們沒有糾正這個問題?你知道嗎? – chobo2 2012-02-10 17:52:51

相關問題