2

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

为清楚起见,该项目当前引用版本 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>

在不需要的情况下如何取消/忽略此重定向?

4

1 回答 1

0

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

于 2017-07-31T13:13:10.310 回答