【发布时间】:2010-08-09 10:16:00
【问题描述】:
我已经创建了一个 WCF 服务 Web 角色项目。我可以在本地使用该服务。但我在尝试在天蓝色云上部署服务时遇到问题。在启动 webrole 之后,它只是让 kepps 进入一个循环,然后它会在它的 init 处停止。我没有对自动添加的默认 WebRoleclass 进行任何更改。谁能指出一些将 WCF 部署到 azure 的示例或示例
【问题讨论】:
我已经创建了一个 WCF 服务 Web 角色项目。我可以在本地使用该服务。但我在尝试在天蓝色云上部署服务时遇到问题。在启动 webrole 之后,它只是让 kepps 进入一个循环,然后它会在它的 init 处停止。我没有对自动添加的默认 WebRoleclass 进行任何更改。谁能指出一些将 WCF 部署到 azure 的示例或示例
【问题讨论】:
您看到的行为发生在 OnStart 或 Run 中的实例错误时。通常的诊断错误捕获还没有机会开始,所以这是一个难以调试的问题。您可以尝试在此函数中添加错误捕获,将错误详细信息写入 blob 或队列,以便您查看实际发生的情况。
话虽如此,对于在开发结构中工作的代码,但在部署后继续循环,首先要检查的是所有引用都具有适当的“复制本地”属性集。作为框架或 Microsoft.WindowsAzure.ServiceRuntime 一部分的任何内容都需要将 Copy Local 设置为 false,其他所有内容都应设置为 true(第三方程序集等)。如果这是一个 Web 角色并且你正在使用 MVC,则需要检查 System.Web.Mvc 是否已将 Copy Local 设置为 true,并且这不包含在 Azure 中部署的标准框架中。
【讨论】:
您是否查看过WCF Azure code page 上的已知问题信息?需要一个补丁,以及对服务行为的调整。希望这会对您有所帮助。
【讨论】:
我刚刚找到了问题的根源。这是由我的一个项目将目标平台设置为 x86 引起的。似乎它不支持 x86 构建程序集,这可能是个问题
【讨论】: