56

当我在本地开发人员结构上运行 Windows Azure Web 角色时,我收到以下错误:

当前的服务模型不同步。确保服务配置和定义文件都有效。

4

11 回答 11

60

我的一位同事遇到了这个问题,经过一番尝试后,问题是两个服务配置文件(云和本地)具有不同数量的设置。

当他更新配置文件以使它们同步时,一切正常。

一个提示是使用 Visual Studio 中的 GUI 同时向两者添加新设置。可以通过右键单击 Web 角色和选择属性来访问 GUI。这应该会打开一个窗口。单击左侧的设置选项卡。

于 2012-07-18T10:39:15.980 回答
12

对我来说,这是由于我的天蓝色项目已从一台 PC 复制到另一台 PC(在此过程中从 Win 7 到 Win 8.1)。我在两者上都使用 VS 2013 社区版,但我已经从 Win7 上的 Azure 2.4 升级到 Win 8.1 机器上的 Azure 2.5。

如果您卸载 azure 项目并编辑 csproj 文件,您只需要进行小编辑(例如添加评论)并保存它,因此它会自行重新编写。这在我的情况下修复了它(我花了很长时间检查 CSDEF 和 CSCFG 文件中的错误)。一旦我重新保存了 csproj 文件,它就可以正常工作了。

于 2015-01-21T11:57:07.423 回答
11

我按照这里的所有答案进行了操作,但最终仍然无法正常工作,我重新启动了 Visual Studio 并成功了。

我相信解决方案是这里的一个或多个答案+重新启动VS的组合。

于 2015-09-16T14:07:38.203 回答
10

这发生在我身上,因为我的一个云配置文件 (.cscfg) 缺少一些在 ServiceDefinition.csdef 中定义的键值对。

手动检查文件很痛苦。有一种简单的方法可以发现差异:

  1. 在解决方案资源管理器中,右键单击构成云服务的角色之一,然后单击上下文菜单中的“属性”。

    在此处输入图像描述

  2. 角色属性窗口将打开灰色并显示一条错误消息:

    “无效的服务定义或服务配置。有关详细信息,请参阅错误列表”。

  3. 打开错误列表窗口,在某些情况下,您应该能够看到特定差异的列表,其中包含文件和属性名称。

    在此处输入图像描述

于 2015-01-08T12:50:29.247 回答
8

对我有用的是:

  1. 确保云服务.cscfg.Local.cscfg文件是相同的(除非您Local.cscfg出于调试目的需要有一些差异),
  2. 确保.csdef文件具有与文件匹配的定义,.cscfg然后
  3. 关闭项目并删除其 Cloud Services.ccproj.user文件。

重新加载项目后,一切正常。

于 2016-04-26T11:09:07.203 回答
4

当服务配置中没有实际故障时,可能会发生该错误。如果它发生并且一切似乎都正确,而不是重新启动 Visual Studio,只需卸载 azurecloud 项目(右键单击:卸载 proecjt

于 2016-09-19T06:32:53.220 回答
1

请交叉检查您的ServiceConfiguration.Cloud.cscfgServiceConfiguration.Local.cscfg文件。我的问题是,我添加了一个配置,Local.cscfg但忘记添加相同的Cloud.cscfg

于 2017-05-17T10:23:51.003 回答
0

My problem was incorrect certificate definition in csdef file.

于 2014-05-18T12:38:51.033 回答
0

对我来说,问题是我使用的 Wifi 阻止了 Azure 正在使用的端口,改变 Wifi 解决了这个问题。

于 2016-01-11T11:10:04.767 回答
0

Had this issue - no errors though. I have found that for some bizarre reason the if the setting:

<Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="UseDevelopmentStorage=true" />

was commented out, then the workerrole would not launch.

于 2015-09-17T14:08:46.637 回答
0

对我来说,问题原来是vmName我在各种环境中分配给我的角色之一的值之间的不一致。我有一个用于我的开发、测试和生产环境的 *.cscfg 文件。其中每一个都有一个角色定义,应该是

   <Role name="HardWorker" vmName="SomeName">...</Role> 

但有一个条目

   <Role name="HardWorker" vmName="SomeOtherName">...</Role> 

显然,这足以触发错误。

于 2019-06-06T23:27:18.740 回答