特定版本为 False 时的特定于版本的程序集引用

Posted

技术标签:

【中文标题】特定版本为 False 时的特定于版本的程序集引用【英文标题】:Version-specific assembly references when Specific Version is False 【发布时间】:2011-10-15 05:47:09 【问题描述】:

我最近开始遇到我的项目需要特定版本的引用程序集的问题,即使这些引用在我的 Visual Studio 项目中标记为特定版本 = False。例如,我将 MyAssembly.dll 版本 1.0.0.0 替换为 MyAssembly 1.0.1.0,引用 MyAssembly.dll 的应用程序将收到错误消息,指出找不到版本 1.0.0.0。特定版本属性似乎不起作用。这是一个巨大的痛苦,因为即使新版本中没有重大更改,我也必须重新构建和重新部署引用程序集的每个应用程序。我知道过去如果这是错误的,它将使用任何版本,如果发现多个版本,它将使用最新版本。有谁知道问题出在哪里?

编辑:这已经打开了一段时间没有任何回应。问题不清楚吗?我想知道的是,有没有办法将我的 .NET 应用程序依赖的程序集更新到新版本,而无需重新构建我的 .NET 应用程序。

【问题讨论】:

【参考方案1】:

您好,我刚刚在 Sharepoint 项目中遇到了同样的问题,我通过编辑 app.config 文件并在配置标签中添加以下内容来修复它。这成功了..

特定版本是编译时问题。我不知道。

  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.SharePoint.Dsp" publicKeyToken="71e9bce111e9429c" culture="neutral" />
        <bindingRedirect oldVersion="11.0.0.0" newVersion="14.0.0.0" />
      </dependentAssembly>
    </assemblyBinding>
  <runtime>

【讨论】:

以上是关于特定版本为 False 时的特定于版本的程序集引用的主要内容,如果未能解决你的问题,请参考以下文章

程序集引用的“特定版本”属性在 Visual Studio 中究竟是如何工作的?

项目中引用的程序集名称但相同版本不可用

spring boot 外部配置 - profile 特定配置

程序集里包含多个版本dll引用 ,强制低版本到制定版本dll引用

c# 未能载入文件或程序集

混合模式程序集是针对运行时的“v2.0.50727”版本构建的