讓你的.NET程序兼容不同版本的Dll文件
前段時間寫的一個WinForm的.NET程序。因為引用了不少的庫文件,但是最近這些庫文件因為修正了一些Bug和算法。但是主的程序文件沒有怎么改動。所以就不像把這個主程序重新編譯了。于是就把所有的新版DLL文件拷貝到運行目錄下,希望主程序能夠直接調(diào)用新版的庫文件。結(jié)果發(fā)現(xiàn)原來這些庫文件都用Strong Name簽了名的。主程序一調(diào)用就出錯,說找不到該版本的文件。
后來查了一下MSDN,發(fā)現(xiàn)只要在config里面加入runtime節(jié)點就可以了。
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="MyAssembly"
publicKeyToken="2b7c3a3291de04"
culture="neutral" />
<bindingRedirect oldVersion="3.0.0.8"
newVersion="4.1.0.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
不過這有個前提條件就是這兩個DLL的PublicKeyToken是一樣的,就是需要用同一個sn文件簽名的才行。
當然如果你的庫文件根本就沒有用Strong Name簽名的話,就不用考慮版本問題了。
相關(guān)文章
visual studio 2017企業(yè)版本安裝(附序列號)
這篇文章主要介紹了visual studio 2017企業(yè)版本安裝,文末為大家分享了序列號,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-03-03asp.net 生成靜態(tài)時的過濾viewstate的實現(xiàn)方法
有時候我們在用asp.net生成靜態(tài)文件的時候,總會出現(xiàn)一些viewstate的字符,因為是靜態(tài)的不是aspx文件,所有沒必要留了,精簡代碼等原因,大家就需要看下面的方法了。2009-03-03asp.net 動態(tài)生成rdlc報表(原創(chuàng))
因為公司需求 研究微軟的Reportviewer 因為有許多特別要求所以動態(tài)調(diào)用 比較靈活 我的需求是 根據(jù)數(shù)據(jù)不同的合并表頭 (參考了隨心所欲的博客文檔 再次表示感謝)2011-12-12Asp.Net的FileUpload類實現(xiàn)上傳文件實例
這篇文章主要介紹了Asp.Net的FileUpload類實現(xiàn)上傳文件的方法,以實例形式講述了上傳文件類的具體實現(xiàn)方法,是非常實用的技巧,需要的朋友可以參考下2014-11-11