2009-01-22 85 views
5

我需要在我的asp.net應用程序中使用dll。如何從bin目錄中加載dll?ASP.net Bin目錄 - dll loading

也許我應該提一下,應用程序是一個混合的asp代碼和asp.net代碼。 因此,當我在我的機器上開發它時,我在bin目錄中放置了一個dll,但在將代碼移到實際環境中後,我不希望爲每個使用asp.net的部分都有單獨的bin目錄。 。

我正在移動的是.aspx和.aspx.cs文件。有沒有辦法加載一個dll NOT FROM/bin(用「using」語句指定它)?看起來像它會自動在/ bin中查找....

+0

爲什麼你不想要一個bin文件夾?這就是ASP.NET的工作原理 – 2009-01-22 18:01:57

回答

3

.net應用程序在項目的/ bin和GAC(全局程序集緩存)中查找系統共享DLL-s的位置。

如果您的應用程序是一個.net應用程序(在IIS中配置爲一個應用程序),但您在子文件夾中有aspx文件,則應該看到根/ bin文件夾。如果這不是十分之幾的垃圾箱(這意味着你的應用組織存在問題),我會堅持將垃圾箱保存在/ bin中。

6

您可以將DLL放在應用程序根目錄的bin文件夾中,或者將其安裝到Global Assembly Cache (GAC) using gacutil(這需要將程序集命名爲強名稱並簽字)。

我只是把它放在箱子裏。

+3

值得注意的是,要將程序集加載到GAC中,他們需要擁有強大的名稱並進行簽名。 – 2009-01-22 18:02:01

+0

好注意axel,謝謝...我會將它添加到答案 – 2009-01-22 18:02:31

0

就是這樣的:因爲它組織得很差(它是asp和asp.net的混合體),所以它的配置肯定沒有問題....我認爲現在最好擁有「10萬個垃圾箱」。

謝謝你們!

+0

嘗試安排在IIS中的東西,將其配置爲一個應用程序和/或一個虛擬目錄...玩一下,也許你可以得到它只能使用一個/ bin – zappan 2009-01-22 18:26:15

1

只需將其他dll的目錄添加到您的路徑環境變量。必須重新啓動asp.net process/visual studio才能使更改生效。爲我工作。