条件绑定重定向

时间:2012-12-05 19:43:04

标签: c#

我正在尝试实现(条件)绑定重定向。我想绑定重定向以使用特定版本的程序集,具体取决于是否已存在另一个更新的版本。

为清楚起见,该项目目前引用的是版本1.1.0.0,但如果不存在,我希望它引用版本1.0.0.0。

此重定向当前成功重定向到1.0.0.0,但只有1.1.0.0的环境无法正常运行(此帖子的程序集名称和publicKeyToken已更改)。

<runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
        <dependentAssembly>
            <assemblyIdentity name="MyAssembly" culture="neutral" publicKeyToken="blahblahblah"/>
            <bindingRedirect oldVersion="1.1.0.0" newVersion="1.0.0.0"/>
            <codeBase version="1.0.0.0" href="file://C:\Windows\assembly\GAC_MSIL\MyAssembly"/>
    </dependentAssembly>
</assemblyBinding>

如果不需要,我该如何取消/忽略此重定向?

1 个答案:

答案 0 :(得分:0)

我担心它不能在运行时完成,但如果它是特定于环境的,你可以在构建时完成它。在构建管道上,您可以检查版本1.1的程序集x是否存在,如果存在,则更新配置文件以使用该版本。