gpt4 book ai didi

c# - 为什么我可以在 web.config 中有多个相同的绑定(bind)重定向?

转载 作者:行者123 更新时间:2023-11-30 20:39:57 25 4
gpt4 key购买 nike

假设我有一个包含以下两个相同部分的 web.config:

<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30AD4FE6B2A6AEED" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
</dependentAssembly>


<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30AD4FE6B2A6AEED" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
</dependentAssembly>

为什么这样做,如果有人更改其中一个重定向,例如 newVersion="4.0.0.0" 而不是 newVersion="6.0.0.0"< 会发生什么?

最佳答案

如果您为一个程序集定义了多个绑定(bind)重定向,它将使用找到的第一个并忽略所有其他重定向。

因此,如果您将第一个的 newVersion 更改为 4.0.0.0,运行时将尝试加载版本 4.0.0.0 的程序集。第二个重定向被忽略。

另见 How the Runtime Locates Assemblies .当我正确理解它时,它采用了第一个具有匹配 assemblyIdentity

的元素

The elements are order-sensitive.....In case of a conflict in redirection, the first matching redirection statement in the configuration file is used.

取自https://msdn.microsoft.com/en-us/library/433ysdt1(v=vs.100).aspx

关于c# - 为什么我可以在 web.config 中有多个相同的绑定(bind)重定向?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33872263/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com