我有一个带有C#代码的程序集。这个程序集的版本是1.0.0.0。当我将此程序集的数据序列化为二进制时,此程序集的信息被序列化。然后我将此程序集版本更新为4.0.0.0,**
我删除了签名
**。当我反序列化程序集的数据时,会发生异常,即“无法加载文件或程序集'[AssemblyName],Version = 1.0.0.0,Culture = neutral,PublicKeyToken = [TokenKey]'或其依赖项之一。需要一个强名称的程序集。(HRESULT异常:0x80131044)“。
如何将旧版本程序集重定向到新版本程序集? 配置程序集绑定是否有效?
答案 0 :(得分:0)
在您的配置中,添加以下块
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="yourAssembly" publicKeyToken="PKTokenOfYourAssembly"/>
<bindingRedirect oldVersion="1.0.0.0" newVersion="4.0.0.0"/>
</dependentAssembly>
</assemblyBinding>