0

我想讓Lucene.NET在共享主機環境上工作。 Mascix結束了codeproject綱要here他是如何得到這個在godaddy上工作的。我正在嘗試isqsolutions這個。共享主辦Lucene.NET

兩個例子,他張貼了我的本地機器上運行良好,並都扔在共享託管服務器上的同樣的錯誤:

Compiler Error Message: CS0246: The type or namespace name 'Lucene' could not be found (are you missing a using directive or an assembly reference?) 

Line 1: <%@ Page Language="C#" %>Line 2: 
Line 3: <%@ Import Namespace="Lucene.Net.Index" %> 
Line 4: <%@ Import Namespace="Lucene.Net.Analysis.Standard" %> 
Line 5: <%@ Import Namespace="Lucene.Net.Documents" %> 

我試着在web.config中增加一個直接引用Lucene.NET assambly像這樣:

<add assembly="Lucene.Net, Version=2.3.1.2, Culture=neutral, PublicKeyToken=a58a1be7fafc31f5"/> 

但是,這也引發了自己的錯誤。我想我的問題是:我錯過了一些簡單的東西,或者可以通過服務器端設置導致這一切都不起作用?

回答

3

如果Lucene.NET沒有安裝在服務器上,您將不得不復制項目中的Lucene.NET dll,並添加對此副本的引用。例如,您現在可能有一個鏈接到Program Files目錄中某個dll的引用。它存在於您的服務器上,但不在部署服務器上。

或者,您也可以在dll上將屬性'Copy to output directory'設置爲'Copy always'。

+0

感謝您的回覆Razzie。這就是網站首先被安裝的方式。 Lucene.Net.dll存在於bin文件夾中。我沒有安裝lucene.net代碼,只下載了一個可以在我的本地PC上正常工作的代碼示例。我的電腦只有一個dll的副本,也就是代碼示例中包含的一個。 – 2009-11-10 14:25:19

+0

好,很難分辨出什麼是錯的。我不是共享主機方面的專家,但如果你說的都是真的,那對我來說聽起來就沒問題。如果您在文本編輯器中打開項目文件,是否將dll列爲參考?它的路徑是否正確?如果是這樣,那麼也許你應該聯繫供應商,也許他們可以告訴你更多。我不知道任何服務器端設置可能會'阻止'一個DLL。你的DLL可能需要完全信任,但至少應該給你一個不同的錯誤。 – Razzie 2009-11-11 08:35:07

1

我創建了一個使用Lucene的asp.net應用程序,它工作正常。這裏有一個關於我的帖子的鏈接(Goomez)。此外,該代碼可供下載。希望它有幫助