我的 Azure Web 项目刚开始出现程序集绑定错误 - 找不到 Microsoft.Data.Edm v5.6.2.0。
我的项目从 nuget 包中引用了该版本的程序集。
我发现的是这样的:
- 当我构建项目时, bin\ 文件夹包含正确版本的程序集。
- 当我将项目部署到 Azure 模拟器时,bin\ 中的程序集被旧版本覆盖:v5.6.0.0。
我的解决方案中的任何项目都没有引用旧版本,但它被 Microsoft.WindowsAzure.Storage v4.2.1.0 引用,而我的项目又引用了它。
(事实上,存储程序集引用了我的项目也引用的三个程序集的旧版本:Microsoft.Data.Edm、Microsoft.Data.OData 和 Microsoft.Data.Services.Client - 所有三个较新的程序集都被旧程序集覆盖部署。)
这种行为突然出现:我正在迭代一些维护,今天下午第 20 次按 Ctrl+F5,突然看到错误。
- 较新的版本会在 Web 项目的
bin\
文件夹中被覆盖,但不会在[azure project]\csx\Debug\roles\[web project name]\approot\bin
或[azure project]\obj\Debug\[web project name]\bin
文件夹中被覆盖 - 受影响的引用设置为复制本地
- 项目文件的差异显示自上次提交以来没有更改
- 同一解决方案中的 Azure 辅助角色具有相同的引用集但不受影响
- 重启VS和重启都没有解决问题
有没有办法打败 Visual Studio?