【问题标题】:Can i have 2 services (.svc) in one Azure WCFWebRole?我可以在一个 Azure WCFWebRole 中有 2 个服务 (.svc) 吗?
【发布时间】:2013-07-05 07:55:57
【问题描述】:

我有一个带有 WCFWebRole 的 Azure 云解决方案,并且我创建了 2 个服务 (.svc)。 在本地主机上,它们都工作得很好。

但是当我将我的解决方案发布到 Azure 时,只上传了一个 .svc

我错过了什么? 我读过很多关于人们出于某种原因将他们的所有服务接口合并到一个 .svc 文件中的帖子,但我认为这没有任何意义,如果最坏的情况发生,我会将 .svc 文件分成 2 个 WebRoles(这将是一种浪费,考虑一下可能是不可能的,因为我在 WebRole 上配置了 Windsor Castle 和 Nhibernate,所以生活方式不会保留在 webrole 之间)

在 localhost 上工作时,拥有多个 .svc 似乎并不是一件大事...

谢谢

【问题讨论】:

    标签: wcf azure azure-web-roles


    【解决方案1】:

    是的,您可以在分配给单个 Azure 云服务 Web 角色的单个 WCF 项目中拥有多个 .svc WCF 服务。

    This GitHub project 是此类项目的一个示例,在使用 ServiceConfiguration.Cloud.cscfg 中的存储凭据进行配置并部署到 Windows Azure 云服务后,它将响应对 Service1.svc?wsdl 和 Service2 的请求。 svc?wsdl.

    要验证您的 .svc 文件是否在包中上传,您可以进入云项目下的 bin\Release\app.publish 目录并解压 .cspkg 文件(它是 ZIP 格式)。在里面你会发现一个大的 .cssx 文件。也提取它。在此文件中查看 approot 目录。您将在那里找到项目文件。在您的云项目下的 csx\Release\roles 中应该可以找到相同的文件。

    如果 .svc 文件确实正在上传并且它们没有在云环境中执行,请检查您的 WCF 绑定和端点。

    您还可以在单​​个开发云实例中激活远程桌面并连接到服务器以验证日志和事件,并检查应用程序目录。

    【讨论】:

    • 这是一个非常有用的答案,我会检查你说的文件夹,但据我记得它没有上传第二个 .svc,如果包不包含它你会怎么做?,我也会检查 github 项目以检查差异
    • @RoyiMindel,如果包不包含可能表明解决方案、项目、构建或部署存在问题的 .svc。但请先验证它是否在 .cspkg 文件中,如果可能,请远程桌面进入服务器以检查应用程序目录和事件日志。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-05
    • 1970-01-01
    • 2013-07-10
    • 1970-01-01
    相关资源
    最近更新 更多