簡體   English   中英

VS2005庫

[英]VS2005 Libraries

因此,假設您有3個項目:

ProjectA - Class Library
ProjectB - Class Library
ProjectC - Console Application

現在,假設ProjectB使用ProjectA的DLL,而ProjectC使用ProjectB的DLL。

當前,我必須為ProjectC添加對ProjectBProjectA引用。

有辦法避免這種情況嗎?

如果Project C不直接使用Project A中的任何類,則無需將Project C引用到ProjectA。

在運行時,您仍然需要可用的Project A dll。

為了闡明“直接使用”-Project C代碼中對類,接口,結構的任何引用-在Project A中定義的任何內容以及對在Project B中定義但從基類/繼承的類或接口的引用項目A中定義的接口。

這就是使用DI(依賴注入)時的方法-項目B是應用程序(C)與服務實現(A)之間的合同。 它包含接口和POCO。

編譯時,應用僅了解合同,運行時DI容器會加載實現。 更改實現不需要重新編譯,可以通過交換dll來完成。

沒有別的辦法了。 您必須在B中添加A的引用,在C中添加B的引用,否則VS.NET將如何知道要使用哪個類庫? 但是,我認為C中不需要A和B的引用。如果構建不成功,請檢查代碼-您可能在C中的某個地方使用了A的類。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM