2010-08-26 69 views
2

(這可能是一個明顯的問題,但我不確定要問什麼Bing/Google)使用存儲在主程序不同文件夾中的參考庫(dll)?

在VS2008(C#Winforms)項目中有許多第三方庫被引用。該項目使用「Copy Local = True」,以便各種DLL文件最終與編譯的應用程序位於同一文件夾中。

要清理東西,我想修改程序,使庫全部在子文件夾下。

例如:

C:\ MyProgram \ - >主程序文件夾 C:\ MyProgram \庫 - > DLL存儲文件夾

我將如何做到這一點?

回答

6

執行此操作的最佳方法是將app.config文件添加到解決方案,併爲每個子文件夾設置專用探測路徑。然後,CLR將查找這些文件夾中的組件

<configuration> 
    <runtime> 
     <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
     <probing privatePath="subFolder1;subFolder2;" /> 
     </assemblyBinding> 
    </runtime> 
</configuration> 

文檔

+0

當我重建出現錯誤的引用無法找到該應用程序搜索時。路徑命名有什麼特殊之處嗎? – 2010-08-26 16:50:31

+0

@John M,不,它只需要匹配app.config中的名稱。請注意,您不能使用此方法並刪除所有裝配參考。爲了建設目的,它們仍然需要維護。 app.config文件僅用於部署場景。 – JaredPar 2010-08-26 16:55:32

相關問題