WCF Visual Studio 模板

Windows Communication Foundation (WCF) Visual Studio 模板是预定义的项目和项模板,可用于在 Visual Studio 中快速生成 WCF 服务和周边应用程序。

使用 WCF 模板

WCF Visual Studio 模板提供用于服务开发的基本类结构。 具体而言,这些模板提供服务协定、数据协定、服务实现和配置的基本定义。 可以使用这些模板创建简单服务,只需最少的代码交互,以及更高级服务的构建基块。

WCF 服务库项目模板

WCF 服务库项目模板在 Visual C#\WCFVisual Basic\WCF 下的“新建项目”对话框中可用。

使用 WCF 服务 模板创建新项目时,新项目会自动包含以下三个文件:

  • 服务协定文件(IService1.cs或IService1.vb)。 服务协定文件是应用 WCF 服务属性的接口。 此文件提供简单服务的定义,用于说明如何定义服务,并包括基于参数的作和简单的数据协定示例。 这是创建 WCF 服务项目后代码编辑器中显示的默认文件。

  • 服务实现文件(Service1.cs或Service1.vb)。 服务实现文件实现在服务协定文件中定义的协定。

  • 应用程序配置文件(App.config)。 配置文件提供具有安全 HTTP 绑定的 WCF 服务模型的基本元素。 它还包括服务的终结点,并启用元数据交换。

注释

Visual Studio 配置为在使用 WCF 服务主机(WcfSvcHost.exe)运行时将 App.config 文件识别为项目的配置文件,这是默认配置。 如果将服务库托管在可执行文件中,则必须将配置代码移动到可执行文件的配置文件,因为 DLL 的配置文件无效。

WCF 服务应用程序模板

WCF 服务应用程序模板在 Visual C#\WCFVisual Basic\WCF 下的“新建项目”对话框中可用。

使用 WCF Web 应用程序服务 模板创建新项目时,该项目包含以下四个文件:

  • 服务主机文件(service1.svc)。

  • 服务协定文件(IService1.cs或IService1.vb)。

  • 服务实现文件(Service1.svc.cs或Service1.svc.vb)。

  • Web 配置文件(Web.config)。

该模板会自动创建一个网站(要部署到虚拟目录),并在其中托管服务。

WCF 网站模板

WCF 网站模板在 Visual C#\Web Site\WCF 服务和Visual Basic\Web Site\WCF 服务下的“新建项目”对话框中可用。 这会创建与 WCF 服务应用程序模板相同的文件,但组织它就像是 ASP.NET 网站一样。 创建App_Code和App_Data文件夹。

WCF 服务项模板

WCF 服务项模板是一个自定义模板,提供将 WCF 服务添加到现有 Visual Studio 项目的快速方法。

若要使用此模板,请转到 “解决方案资源管理器” 窗格,右键单击项目名称,指向 “添加”,然后单击“ 新建项 ”以启动“ 添加新项 ”对话框。

服务接口和实现文件放置在根项目文件夹中。

模板尝试将新服务的配置部分合并到现有配置文件(如果它们是兼容类型)。

如果现有项目是 Web 项目,也会创建服务主机文件(service1.svc)。

WCF WF 服务项目和项模板。

这些模板创建承载工作流服务的 WCF 服务,该服务是一个工作流,可以像 Web 服务一样访问。 XAML 或命令性编程模型存在单独的模板。 使用模板,可以创建顺序或状态机工作流。 有关这些类型的工作流的详细信息,请参阅 “如何:创建工作流”。 有关创建工作流项目的详细信息,请参阅 “创建旧工作流项目”。

使用 XOML 类型工作流而不是基于代码的工作流时,Visual Studio 设计器的响应能力更高。 XOML 工作流是默认创建的工作流类型。

WCF 联合服务库模板

通过使用此模板,可以将 RSS 或 ATOM 格式的源作为 WCF 服务公开。 有关详细信息,请参阅 WCF 联合

更改订阅的地址

联合模板在执行期间使用 Web 浏览器。 在 Visual Studio 的解决方案资源管理器 中右键单击项目时,选择“ 属性”,然后选择 “调试 ”选项卡,可以看到模板的默认地址。 浏览器尝试在此地址打开源。

如果更改源的地址,还必须更改 “调试 ”选项卡中的地址。如果不这样做,浏览器会尝试在默认地址打开源,并失败。

已启用 AJAX 的 WCF 服务项模板

此模板将 AJAX 控件公开为 WCF 服务。 有关 AJAX 控件的详细信息,请参阅 AJAX 控件文档

已启用 Silverlight 的 WCF 服务项模板

此模板创建一个 Web 服务,该服务向 Silverlight 客户端或前端提供数据。 可将模板添加到网站或 Web 应用程序项目以创建 WCF 服务,其中包括支持与 Silverlight 客户端通信的服务代码和配置。 然后,可以使用 “添加服务引用 ”将服务的客户端代理添加到客户端,并在 Silverlight 客户端与已启用 Silverlight 的 WCF 服务之间交换数据。

若要访问此模板,请在 解决方案资源管理器中右键单击网站或 Web 应用程序项目,单击“ 添加新项”,然后单击 已启用 Silverlight 的 WCF 服务

注释

已启用 Silverlight 的 WCF 服务公开终结点 basicHttpBinding ,而无需启用任何安全设置。 因此,连接到此服务的所有客户端都可以获取有关该服务的信息。 服务与客户端之间交换的消息也不会进行签名或加密。 若要正确保护终结点,应使用 ASP.NET 身份验证、HTTPS 或其他机制。

另请参阅