2010-03-31 34 views
1

我正在嘗試爲使用網站而不是Web應用程序項目的現有網站創建一組WCF Web服務。我想創建一個DLL,將其放入Bin文件夾,而不是將所有代碼寫入App_Code目錄中。理想情況下,我想創建一個項目並從網站中引用它,但我遇到了困難的情況。如何解決Visual Studio Web Project中的循環引用問題?

該DLL將需要引用位於網站的bin文件夾內的配置和其他DLL,從而引起循環引用。我如何解決這個問題?

回答

1

爲什麼它是一個循環引用,如果你引用外部DLL?你仍然可以引用配置,而不用引用你編譯的網站的dll。此外,您必須從Temp ASP .Net文件中獲取它,因爲網站是根據請求編譯的。

如果你真的從你的網站上引用了一些代碼,爲什麼不把它放在你新建的庫中,並引用你網站上的代碼?

+0

只是爲了澄清,我創建的服務將在網站文件夾中運行。它需要訪問當前的數據庫,用戶等。如果我把它放在外部項目中,我將不得不痛苦地重新創建已經存在的環境。我想我的問題是如何避免在App_Code中編寫我所有的代碼? – 2010-03-31 23:53:42

+0

我沒有看到問題。您仍然可以使用來自外部DLL的相同配置,資源等,只要它位於與您的網站相同的AppDomain內。 – 2010-04-01 02:58:38

+0

我的腦部放屁(BFOMP)!現在你已經完全理解了,我正在考慮從dll項目引用整個網站項目,而不是單個DLL。我知道這一點,但我猜Web站點項目在概念上都是短暫的。這與Web項目不像正常VS項目一樣運作的事實有關。 Web項目應該被禁止並且只能通過處方獲得。 – 2010-04-01 03:45:08

0

循環引用永遠不可能從soure構建。我要麼摺疊這兩個項目,要麼使用反射來打破循環依賴。

0

將導致循環引用的頁面複製到不同的文件夾並編譯應用程序。我已通過此修復解決了我的問題。

相關問題