1

我有一个工作的 WCF 服务。我想在 Windows Azure 上部署它。有Host Existing WCF Service On Azure 它是写的,我应该右键单击项目并选择一个选项。但我的菜单中没有这样的选项。对于哪些类型的项目,我可以通过上面提到的右键单击进行此类转换?

4

1 回答 1

3

首先,您必须在 Visual Studio 2010 中检查项目类型。请确保您要部署的项目是 WCF Application 或 WebApplication 类型(托管 WCF 服务)。如果它是网站项目(托管 WCF 服务),您可以轻松地将其从 Visual Studio 中转换为 WebApplication 项目。

如果您的项目是 WCF 库,那么您必须先将其托管在 WCF 应用程序或 WebApplication 项目中,然后才能将其部署到 Windows Azure(或者甚至更好地将其直接托管在 Windows Azure WCFServiceRole 或 WebRole 项目中)。

然后您必须安装最新的 Windows Azure SDK,以便在您的开发机器上安装所有 Windows Azure 功能。您应该有“添加 Windows Azure 部署项目”选项。

要在 WCF 应用程序中托管 WCF 库,请执行以下操作(对于 Windows Azure WCFServiceRole 项目应该几乎相同):

在 Visual Studio 2010 中,创建一个 WCF 应用程序项目并将其添加到您的解决方案中。

在这个新的 WCF 应用程序项目的解决方案视图下,通过“References->Add References->Projects”或“References->Add References->Browser”向其 DLL 添加对 WCF 库的引用。

在新项目的解决方案视图下,删除 IService1.cs,同时删除 Service1.svc 下的 Service1.svc.cs,因为我们将使用 WCF 库中的服务实现。但保留Service1.svc。

在新项目的解决方案视图下,双击Service1.svc将其打开,替换其以下标记行:

<%@ ServiceHost Language="C#" Debug="true" Service="WcfWebService.Service1" 
CodeBehind="Service1.svc.cs" %> 

<%@ ServiceHost Language="C#" Debug="true" Service="WcfServiceLibrary.Service1" %>

您可能需要更改 WcfWebService、WcfServiceLibrary 和 Service1 并使用您的真实姓名才能使其正常工作。

请让我知道这是否有帮助。

于 2012-06-16T18:21:51.827 回答