5

<bindingRedirect />在完整的 .NET Framework 之外是否受支持?例如,普通的 .NET 应用程序(inapp.configweb.config)支持以下内容:

<configuration>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="PostSharp"  publicKeyToken="b13fd38b8f9c99d7" culture="neutral" />
        <bindingRedirect oldVersion="3.0.0.0-3.1.1.1" newVersion="3.1.1.1"/>
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
</configuration>

如果不支持,如何解决间接程序集引用的问题?也就是说,如果组件 A 引用组件 B 和 C,并且 B 引用 D v1.0,C 引用 D v1.1,如果我们只发布 D v1.1,我们如何确保 B 找到它的依赖关系?

4

1 回答 1

5

Silverlight、Windows Phone 或 Windows 应用商店应用程序不支持无绑定重定向。但是,这是因为它们不是必需的。

假设我们在这里只讨论非平台程序集,基本上所有这三个平台都具有相似的绑定策略,因为它们将允许程序集的更高版本满足具有相同名称的早期版本。

在您的特定示例中,这意味着组件 B 将自动获取版本 D v1.1。

于 2012-09-12T21:09:49.943 回答