如何在不更新的情况下克服"Could not load type 'Microsoft.Cct.Services.Sqm.IWatSqmService'"?

How to overcome "Could not load type 'Microsoft.Cct.Services.Sqm.IWatSqmService'" without updating?

我收到与这个问题中相同的错误消息:不幸的是,我无法升级到 Azure SDK 2.9,正如上面的最佳答案所建议的那样。

具体来说,每当我尝试打包我的 Azure 云服务项目时,我都会在消息框中收到此错误:

有趣的是,我可以在模拟器中启动同一个项目,我认为这涉及到打包它。

我尝试过的事情:

  1. 确保我只安装了 2.8.2 版本的模拟器(我可能最初安装的是 2.9)
  2. 正在重新安装 SDK 版本 2.8.2
  3. 手动将 Windows Azure ToolsC:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0 复制到 v14.0 等价物。
  4. 确保C:\Program Files\Microsoft SDKs\Azure\.NET SDK\v2.8存在
  5. 正在重新安装Visual Studio(所以你知道我很绝望!)

而且我不知道接下来要尝试什么。我不知道哪个 DLL 应该保存 Microsoft.VisualStudio.WindowsAzure.Services 程序集,我在任何配置文件中都找不到任何引用,所有 Google 命中似乎都指向链接的 SO 问题以上。

这是怎么回事?我该如何解决?


如果我是个白痴,这里是我安装的所有与 Azure 相关的东西:

此外(以防万一)我正在使用 Windows 7 SP1。


2016 年 1 月 17 日更新

根据优秀 Rest Azured Slack channel 的一些建议,我尝试使用 ProcMon 和 Fusion Log 来诊断此问题(剧透:没有成功

ProcMon 过滤到该程序集 returns 无:

Fusion 日志(设置为记录所有内容)产生大量如下条目:

* Assembly Binder Log Entry (17/01/2017 @ 11:52:02) *

The operation was successful. Bind result: hr = 0x0. The operation completed successfully.

Assembly manager loaded from: C:\Windows\Microsoft.NET\Framework\v4.0.30319\clr.dll Running under executable C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.exe --- A detailed error log follows.

=== Pre-bind state information === LOG: DisplayName = Microsoft.VisualStudio.WindowsAzure.Services, Version=1.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a (Fully-specified) LOG: Appbase = file:///C:/Program Files (x86)/Microsoft Visual Studio 14.0/Common7/IDE/ LOG: Initial PrivatePath = NULL LOG: Dynamic Base = NULL LOG: Cache Base = NULL LOG: AppName = devenv.exe Calling assembly : Microsoft.VisualStudio.WindowsAzure, Version=2.9.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a. === WRN: Native image will not be probed in LoadFrom context. Native image will only be probed in default load context, like with Assembly.Load(). WRN: No matching native image found. LOG: IL assembly loaded from C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\Windows Azure Tools\Microsoft.VisualStudio.WindowsAzure.Services.dll.

当我浏览提到的 DLL 时,我可以找到 Microsoft.Cct.Services.Sqm,但它不包含类型 IWatSqlService:

感觉这就是问题的症结所在,但我不知道下一步该怎么做。大概我需要用一个确实定义 IWatSqlService 的版本替换 DLL,但我不确定我从哪里得到一个。或者,就此而言,为什么它甚至是必要的。

下一站可能是彻底擦拭机器。

我遇到了同样的问题,并通过不使用 Web 平台安装程序.

解决了这个问题

从 Microsoft 站点下载所有部分(Microsoft Azure SDK for .NET - 2.8.2):https://www.microsoft.com/en-us/download/details.aspx?id=50041 并按照安装说明进行操作。

对于遇到此问题的其他人。我最终通过从轨道上用核武器解决了这个问题。全新安装 Windows,重新安装 VS 和 SDK。

令人困惑的是,您在添加新

时也会看到此错误
<setting name="TODO" />

元素添加到您的 *.csdef 文件中,但是:

  1. 忘记给每个*.cscfg file添加对应的<setting name="TODO" value="TODO" />元素,或者

  2. 不小心将重复的 <setting name="TODO" value="TODO" /> 元素添加到任何 *.cscfg 文件。