簡體   English   中英

參考具有備用版本的GAC程序集

[英]reference GAC assembly with fallback version

我的項目引用了GAC中的程序集的2.0.0.0版。 如果版本2.0.0.0不可用,我想將參考重定向/更改為版本號1.0.0.0。

一些研究提出了以下文章,但它們似乎與我的情況沒有直接關系:
如何提供一個后備程序集而不是無法加載的程序集?
如何引用多個版本的程序集

我相信強命名程序集需要特定的版本號,所以我認為引用本身不能使用通配符(*)? 解決我的情況最簡單的方法是什么?

解決方案是使用bindingRedirect。 顯然,如果oldVersion高於newVersion,則可以正常工作,如我的情況。 http://www.infosysblogs.com/microsoft/2007/04/loading_multiple_versions_of_s.html

沒有代碼更改-簡單的配置添加。

如果需要動態加載任意程序集和類,則可以使用Assembly.Load (或其變體之一)和Assembly.CreateInstance()

您需要這樣做的原因是它允許后期綁定。 在GAC中引用程序集是早期的綁定方案,因此不能在運行時進行更改。

暫無
暫無

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

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