我正在使用的網站使用第三方程序集,讓我們假設A.dll。該組件A也爲一些操作加載另一個組件B.我的網站使用A完全不需要B,而我沒有B.dll。從.NET 3.5到4.0:Web應用程序崩潰,因爲未使用的程序集未找到
這是從來沒有問題,當我的目標是.NET 3.5,但現在我試圖移動到.NET 4,我得到一個錯誤。當我在瀏覽器中查看我的網站時,我得到:「無法加載文件或程序集」B.dll「[...]」。如果我把B.dll放在bin目錄中,它可以正常工作。
但是,我不想部署B.dll,我不知道是什麼讓.NET 4嘗試加載該程序集,而網站並未使用需要它的任何A功能。我很困惑,因爲相同的代碼在.NET 3.5上工作正常。我猜測它會嘗試加載所有程序集,即使它不會被使用。我正在尋找一些防止這種行爲的配置或編譯器標誌。任何指針?
我試圖通過省略細節和原因來簡化我的問題,爲什麼我不希望B部署等。請讓我知道,如果我提供的信息沒有給出明確的問題。謝謝!
編輯:
堆棧跟蹤
[FileNotFoundException異常:未能加載文件或程序集B,版本= 15.4.0.0,文化=中性公鑰= 1a5b964d6f0fbeab'或它的一個依賴。系統不能找到指定的文件]
_Default.Page_Load(對象發件人,EventArgs e)如C:\ Users \用戶鮑勃\桌面\的WebSite1 \ Default.aspx.cs:15
的System.Web。 Util.CalliHelper.EventArgFunctionCaller(IntPtr fp,Object o,Object t,EventArgs e)+14 System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender,EventArgs e)+35 System.Web.UI.Control.OnLoad( EventArgs的)91 System.Web.UI.Control.LoadRecursive()74 System.Web.UI.Page.ProcessRequestMain(布爾includeStagesBeforeAsyncPoint,布爾includeStagesAfterAsyncPoint)2207
大會負載跟蹤
===預綁定狀態信息=== LOG:用戶=鮑勃 LOG:DisplayName的= B,版本= 15.4.0.0,文化=中性公鑰= 1a5b964d6f0fbeab (完全指定) LOG:Appbase = file:/// C:/ Users/bob/Desktop/WebSite1/ LOG:初始PrivatePath = C:\ Users \ bob \ Desktop \ WebSite1 \ bin 調用程序集:A,版本= 16.0.0.0,Culture = neutral,PublicKeyToken = null。
=== LOG:此綁定在默認加載上下文中啓動。 LOG:使用應用程序配置文件:C:\ Users \ bob \ Desktop \ WebSite1 \ web.config LOG:使用主機配置文件: LOG:使用C:\ Windows \ Microsoft.NET \ Framework \ v4中的計算機配置文件.0.30319 \ CONFIG \ machine.config中。 日誌:後策略參考:B,版本= 15.4.0.0,文化=中立,PublicKeyToken = 1a5b963c6f0fbeab 日誌:嘗試下載新的URL文件:/// C:/Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP.NET Files/website1/efdbfea0/f60231a3/B.DLL。 日誌:嘗試下載新的URL文件:/// C:/Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP。NET Files/website1/efdbfea0/f60231a3/B/B.DLL。 日誌:試圖下載新的URL文件:/// C:/Users/bob/Desktop/WebSite1/bin/B.DLL。 日誌:試圖下載新的URL文件:/// C:/Users/bob/Desktop/WebSite1/bin/B/B.DLL。 日誌:試圖下載新的URL文件:/// C:/Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP.NET Files/website1/efdbfea0/f60231a3/B.EXE。 日誌:試圖下載新的URL文件:/// C:/Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP.NET Files/website1/efdbfea0/f60231a3/B/B.EXE。 日誌:試圖下載新的URL文件:/// C:/Users/bob/Desktop/WebSite1/bin/B.EXE。 日誌:試圖下載新的URL文件:/// C:/Users/bob/Desktop/WebSite1/bin/B/B.EXE。
什麼是堆棧跟蹤? – SLaks 2010-11-09 01:19:37