无法加载文件或程序集 System.ComponentModel.Annotations。该系统找不到指定的文件

Could not load file or assembly System.ComponentModel.Annotations. The system cannot find the file specified

我正在使用程序集绑定,但仍然出现此错误:

无法加载文件或程序集 'System.ComponentModel.Annotations, Version=4.2.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' 或其依赖项之一。系统找不到指定的文件

这是我的代码:

  <dependentAssembly>
    <assemblyIdentity name="System.ComponentModel.Annotations" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-4.2.1.0" newVersion="4.2.1.0" />
  </dependentAssembly>

以下是错误的更多详细信息:

===预绑定状态信息=== 日志:DisplayName = System.ComponentModel.Annotations,版本=4.2.0.0,文化=中性,PublicKeyToken=b03f5f7f11d50a3a (完全指定) 日志:Appbase = file:///C://Source/Workspaces/CQB/Development/Dev-branch/Azure/CloudService1/csx/Debug/roles/CQB.TaskRole2/approot 日志:初始 PrivatePath = C:\Users\Source\Workspaces\CQB\Development\Dev-branch\Azure\CloudService1\csx\Debug\roles\CQB.TaskRole2\approot

调用程序集:Square.Connect,版本=2.25.0.0,文化=中性,PublicKeyToken=null。

日志:此绑定在默认加载上下文中启动。 日志:使用应用程序配置文件:C:\Users\Source\Workspaces\CQB\Development\Dev-branch\Azure\CloudService1\csx\Debug\roles\CQB.TaskRole2\approot\CQB.TaskRole2.dll.config 日志:使用主机配置文件: 日志:使用来自 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\config\machine.config 的机器配置文件。 日志:在应用程序配置文件中发现重定向:4.2.0.0 重定向到 4.2.1.0。 日志:Post-政策参考:System.ComponentModel.Annotations,版本=4.2.1.0,文化=中立,PublicKeyToken=b03f5f7f11d50a3a 日志:正在尝试下载新的 URL file:///C://Source/Workspaces/CQB/Development/Dev-branch/Azure/CloudService1/csx/Debug/roles/CQB.TaskRole2/approot/System.ComponentModel.Annotations.DLL。 日志:正在尝试下载新的 URL 文件:///C://Source/Workspaces/CQB/Development/Dev-branch/Azure/CloudService1/csx/Debug/roles/CQB.TaskRole2/approot/System.ComponentModel.Annotations/System.ComponentModel.Annotations.DLL。 日志:正在尝试下载新的 URL 文件:///C://Source/Workspaces/CQB/Development/Dev-branch/Azure/CloudService1/csx/Debug/roles/CQB.TaskRole2/approot/System.ComponentModel.Annotations.EXE。 日志:正在尝试下载新的 URL 文件:///C://Source/Workspaces/CQB/Development/Dev-branch/Azure/CloudService1/csx/Debug/roles/CQB.TaskRole2/approot/System.ComponentModel.Annotations/System.ComponentModel.Annotations.EXE.

我发现在库引用属性中显示 Version 4.5.0 的版本是 4.2.1.0。当我通过 NuGet 更改 version to 4.4.1 时,属性中的版本更改为 4.2.0.0

因此,通过 nuget 将 System.ComponentModel.Annotations 的版本更改为 4.4.1 将为我解决问题。