簡體   English   中英

實現另一個項目的接口,該項目又引用了第三方dll,並使用該dll中的類型

[英]Implementing an interface from another project, which in turn references a 3rd party dll, and using types from that dll

希望我的標題不要太混亂。

我的解決方案中有幾個項目,其中一個僅包含MyProgram.Contract接口。 我的插件需要實現這些接口。

MyProgram.Contract我為其中定義的某些類型引用了第三方DLL,例如一個稱為DataValue

MyProgram.MyPlugin我引用MyProgram.Contract並實現該接口,並且具有屬性DataValue Value { get; set; } DataValue Value { get; set; } DataValue Value { get; set; } ,如接口中所定義。 它會編譯,我可以在主應用程序中設置Value -property的值,並將其顯示在插件的數據綁定視圖中。

但是,如果嘗試在插件的代碼中使用DataValue ,則會出現錯誤“類型aThirdPartyLib.DataValue在未引用的程序集中定義。您必須添加對程序集aThirdPartyLib的引用..”。

這就是我想要避免的。 我的願望是,這些插件除了MyProgram.Contract之外就不需要其他引用。 有沒有一種方法可以實現此目的,或者我需要在插件項目中添加與插件合同項目中所有相同的引用?

如果在接口定義中使用該DLL中的類型,則這些接口的實現者也將需要對該DLL的引用。 真的沒有辦法解決。

暫無
暫無

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

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