【问题标题】:Windows Azure - Include a WCF service in a virtual directory of a web roleWindows Azure - 在 Web 角色的虚拟目录中包含 WCF 服务
【发布时间】:2013-03-07 22:58:48
【问题描述】:

是否可以让 wcf 服务角色存在于 Azure 上 Web 角色的虚拟目录(或不确定该词是否适合 Azure 的等效目录)中。

例如:

www.mydomain.com                  <- contains the web role or website
www.mydomain.com/myservice.svc    <- contains the WCF service

我看到有人建议您可以更改配置以允许使用虚拟目录,但是我已经 RDP 到两个 VM 中,它们似乎不共享磁盘上的相同文件。

我是 Azure 新手,请原谅术语。但是有可能做我想做的事吗?

【问题讨论】:

    标签: windows wcf azure cloud


    【解决方案1】:

    如果网站和 WCF 服务都处于相同的 Web 角色中,则可以使用上面列出的 URL 访问它们。如果您执行以下操作,您将获得上面描述的 URL:

    1. 在 Visual Studio 中创建一个新的云项目,指定一个 Windows Azure 云服务。
    2. 在提示符下,添加一个 MVC Web 角色。
    3. 在下一个提示符下,选择 Internet 应用程序并按 OK。
    4. 创建项目后,右键单击 MVC 项目并选择 Add --> New Item --> WCF Service。
    5. 按 F5。将显示默认的 ASP.NET MVC 主页。然后导航到http://yourlocalhostaddress/Service1.svc。您将看到新 WCF 服务的典型“您已创建服务”登录页面。

    【讨论】:

    • 谢谢,@seanost,这个解决方案对我有用,虽然我很好奇你会怎么做,如果你仍然想在一个单独的网络角色实例中托管你的服务?
    • 简短的回答是,如果您对具有不同端口指定的 WCF 服务端点没问题,您可以这样做。这就是 Azure 按端口为同一域指定不同 Web 角色的方式。例如,创建一个新项目,添加一个 Web 角色,然后将另一个 Web 角色添加到该项目。对于第二个 Web 角色,添加 WCF 服务(如上面的说明)。当你按下 F5 时,会出现两个浏览器窗口,一个是这种格式:http://127.0.0.1,另一个是http://127.0.0.1:8080。您只能使用http://127.0.0.1:8080/Service1.svc访问该服务。
    猜你喜欢
    • 2010-11-17
    • 2013-10-28
    • 1970-01-01
    • 1970-01-01
    • 2012-08-20
    • 2012-03-04
    • 1970-01-01
    • 2012-03-16
    • 1970-01-01
    相关资源
    最近更新 更多