Шаблоны WCF в Visual StudioWCF Visual Studio Templates

Шаблоны Windows Communication Foundation (WCF) Visual Studio — это стандартные шаблоны проектов и элементов, которые можно использовать в Visual Studio для быстрого создания служб WCF и окружающих приложений.Windows Communication Foundation (WCF) Visual Studio templates are predefined project and item templates you can use in Visual Studio to quickly build WCF services and surrounding applications.

Использование шаблонов WCFUsing the WCF Templates

Шаблоны WCF Visual Studio предоставляют базовую структуру классов для разработки служб.WCF Visual Studio templates provide a basic class structure for service development. В частности, эти шаблоны предоставляет основные определения для контракта службы, контракта данных, реализации службы и конфигурации.Specifically, these templates provide the basic definitions for service contract, data contract, service implementation, and configuration. Эти шаблоны можно использовать для создания простой службы, которая потребует минимального программирования, и которая может служить как стандартный блок для более сложных служб.You can use these templates to create a simple service with minimal code interaction, as well as a building block for more advanced services.

Шаблон проекта библиотеки служб WCFWCF Service Library Project Template

Шаблон проекта "Библиотека служб WCF" доступен в диалоговом окне Новый проект в разделе C#Visual \Вкф and Visual басик\вкф.The WCF Service Library project template is available in the new project dialog box under Visual C#\WCF and Visual Basic\WCF.

При создании нового проекта с помощью шаблона службы WCF новый проект автоматически включает следующие три файла:When you create a new project using the WCF Service template, the new project automatically includes the following three files:

  • файл контракта службы (IService1.cs или IService1.vb);Service contract file (IService1.cs or IService1.vb). Файл контракта службы — это интерфейс, к которому применены атрибуты службы WCF.The service contract file is an interface that has WCF service attributes applied. Этот файл предоставляет определение простой службы, чтобы показать как определяются пользовательские службы, он включает параметризованные операции и простой образец контракта данных.This file provides a definition of a simple service to show you how to define your services, and includes parameter-based operations and a simple data contract sample. Это файл по умолчанию, отображаемый в редакторе кода после создания проекта службы WCF.This is the default file displayed in the code editor after creating a WCF service project.

  • Файл реализации службы (Service1.cs или Service1.vb).Service implementation file (Service1.cs or Service1.vb). Файл реализации службы реализует контракт, определенный в файле контракта службы.The service implementation file implements the contract defined in the service contract file.

  • Файл конфигурации приложения (App.config).Application configuration file (App.config). Файл конфигурации предоставляет базовые элементы модели службы WCF с безопасной привязкой HTTP.The configuration file provides the basic elements of a WCF service model with a secure HTTP binding. Также включает конечную точку для службы и позволяет осуществлять обмен метаданными.It also includes an endpoint for the service and enables metadata exchange.

Примечание

Visual Studio настроена на распознавание файла App. config в качестве файла конфигурации для проекта при его запуске с помощью узла службы WCF (WcfSvcHost. exe), который является конфигурацией по умолчанию.Visual Studio is configured to recognize the App.config file as the configuration file for the project when it is run using the WCF Service Host (WcfSvcHost.exe), which is the default configuration. Если размещать библиотеку службы в исполняемом файле, то необходимо переместить код конфигурации в файл конфигурации исполняемого файла, так как файлы конфигурации для DLL-библиотек являются недопустимыми.If you host the service library in an executable, you have to move the configuration code to the configuration file of the executable, as configuration files for DLLs are not valid.

Шаблон веб-приложения службы WCFWCF Service Application Template

Шаблон приложения службы WCF доступен в диалоговом окне Новый проект в разделе Visual C#\Вкф and Visual басик\вкф.The WCF Service Application template is available in the New Project dialog box under Visual C#\WCF and Visual Basic\WCF.

При создании нового проекта с помощью шаблона службы веб-приложений WCF проект включает следующие четыре файла:When you create a new project using the WCF Web Application Service template, the project includes the following four files:

  • файл ведущего приложения службы (service1.svc);Service host file (service1.svc).

  • файл контракта службы (IService1.cs или IService1.vb);Service contract file (IService1.cs or IService1.vb).

  • файл реализации службы (Service1.svc.cs или Service1.svc.vb);Service implementation file (Service1.svc.cs or Service1.svc.vb).

  • файл веб-конфигурации (Web.config).Web configuration file (Web.config).

Шаблон автоматически создает веб-сайт (развертывается в виртуальном каталоге) и размещает в нем службу.The template automatically creates a Web site (to be deployed to a virtual directory) and hosts a service in it.

Шаблон веб-сайта WCFWCF Web Site Template

Шаблон веб-сайта WCF доступен в диалоговом окне Новый проект в разделе Visual C#\Web Сите\вкф Service and Visual басик\веб сите\вкф Service.The WCF Web Site template is available in the New Project dialog box under Visual C#\Web Site\WCF Service and Visual Basic\Web Site\WCF Service. Создаются те же файлы, что и с шаблоном приложения службы WCF, но при этом шаблон организуется так, как если бы он представлял собой веб-сайт ASP.NET.This creates the same files as the WCF Service Application template but organizes it as if it were a ASP.NET web site. Создаются папки App_Code и App_Data.App_Code and App_Data folders are created.

Шаблон элемента службы WCFWCF Service Item Template

Шаблон сервисного элемента WCF — это пользовательский шаблон, предоставляющий быстрый способ добавления служб WCF в существующие проекты Visual Studio.The WCF Service Item template is a custom template that provides a quick way to add WCF services to your existing Visual Studio projects.

Чтобы использовать этот шаблон, перейдите в область Обозреватель решений , щелкните правой кнопкой мыши имя проекта, наведите указатель на пункт Добавитьи выберите новый элемент , чтобы открыть диалоговое окно Добавление нового элемента .To use this template, go to the Solution Explorer pane, right-click your project name, point to Add, and then click New Item to launch the Add New Item dialog box.

Интерфейс службы и файлы реализации размещаются в корневой папке проекта.The service interface and implementation files are placed in the root project folder.

Шаблон попытается включить раздел конфигурации новой службы в существующий файл конфигурации, при условии что у них совместимые типы.The template attempts to merge the configuration section of the new service to the existing configuration file, if they are compatible types.

Если существующий проект является веб-проектом, то также создается файл узла службы (service1.svc).A service host file (service1.svc) is also created if the existing project is a Web project.

Шаблон элемента и проект службы WF WCF.WCF WF Service Project and Item Template.

Эти шаблоны создают службы WCF, в которых размещается служба рабочего процесса, которая является рабочим процессом, доступ к которому можно получить как к веб-службе.These templates create WCF services that host a Workflow Service, which is a workflow that can be accessed like a web service. Для моделей императивного программирования и XAML существуют отдельные шаблоны.Separate templates exist for XAML or imperative programming models. Используя эти шаблоны, можно создать последовательный рабочий процесс или рабочий процесс конечного автомата.Using the templates, you can create sequential or state machine workflow. Дополнительные сведения об этих типах рабочих процессов см. в разделе как Создайте рабочий процесс.For more information on these types of workflow, see How to: Create a Workflow. Дополнительные сведения о создании проектов рабочих процессов см. в разделе Создание устаревших проектов рабочих процессов.For more information about creating workflow projects, see Creating Legacy Workflow Projects.

Visual Studio Designer более быстро реагирует на использование рабочих процессов типа XOML, а не на основе кода.Visual Studio designer is more responsive when XOML type workflows are used instead of code based ones. Рабочий процесс XOML - это создаваемый по умолчанию тип рабочего процесса.XOML workflow is the default workflow type to be created.

Шаблон библиотеки служб синдикации WCF.WCF Syndication Service Library Template

Этот шаблон позволяет предоставлять веб-канал в формате RSS или ATOM как службу WCF.This template enables you to expose your feed in the RSS or ATOM format as a WCF service. Дополнительные сведения см. в разделе WCF синдикации.For more information, see WCF Syndication.

Изменение адреса веб-каналаChanging the Address of the Feed

Шаблон синдикации при выполнении использует Internet Explorer.The syndication template uses Internet Explorer during execution. Щелкнув правой кнопкой мыши проект в обозревателе решений в Visual Studio, выберите пункт свойства, а затем перейдите на вкладку Отладка и просмотрите адрес по умолчанию шаблона.When you right-click your project in Solutions Explorer in Visual Studio, select Properties, then select the Debug tab and you can see the default address of the template. Internet Explorer пытается открыть веб-канал по этому адресу.Internet Explorer attempts to open the feed at this address.

При изменении адреса веб-канала необходимо также изменить адрес на вкладке Отладка . Если этого не сделать, то Internet Explorer будет пытаться открыть веб-канал по адресу, используемому по умолчанию, и произойдет ошибка.If you change the address of your feed, you must also change the address in the Debug tab. If you do not do this, Internet Explorer attempts to open the feed at the default address and fail.

Шаблон элемента службы WCF с поддержкой AJAXAJAX enabled WCF Service Item Template

Этот шаблон предоставляет элемент управления AJAX в качестве службы WCF.This template exposes an AJAX control as a WCF service. Дополнительные сведения об элементах управления AJAX см. в документации по элементу управления AJAX.For more information on AJAX controls, see the AJAX control documentation.

Шаблон элемента службы WCF с поддержкой SilverlightSilverlight-enabled WCF Service Item Template

Этот шаблон создает веб-службу, которая предоставляет данные клиенту Silverlight или внешнему интерфейсу.This template creates a Web service that provides data to a Silverlight client or front-end. Шаблон можно добавить к веб-сайту или проекту веб-приложения, чтобы создать службу WCF, которая включает код службы и конфигурацию, поддерживающую взаимодействие с клиентом Silverlight.The template can be added to a Web site or Web application project to create a WCF service, which includes service code and configuration that support communicating with a Silverlight client. Затем можно использовать Добавление ссылки на службу , чтобы добавить клиентский прокси службы к клиенту и обмениваться данными между клиентом Silverlight и службой WCF с поддержкой Silverlight.You can then use Add Service Reference to add a client proxy of the service to the client, and exchange data between the Silverlight client and the Silverlight-enabled WCF service.

Чтобы получить доступ к этому шаблону, щелкните правой кнопкой мыши веб-сайт или проект веб-приложения в Обозреватель решений, щелкните Добавить новый элементи выберите пункт Служба WCF с поддержкой Silverlight.To access this template, right-click a Web site or Web application project in Solution Explorer, click Add a new item, and click Silverlight-enabled WCF Service.

Примечание

Служба WCF с поддержкой Silverlight предоставляет доступ к конечной точке basicHttpBinding без применения параметров безопасности.The Silverlight-enabled WCF Service exposes a basicHttpBinding endpoint without enabling any security settings. Поэтому сведения о службе могут быть получены всеми клиентами, которые подключены к этой службе.Therefore, information about the service can be obtained by all clients that connect to this service. Сообщения, которыми обмениваются служба и клиент, также не подписываются и не шифруются.Messages exchanged between the service and the client are also not signed or encrypted. Для защиты конечной точки необходимо использовать проверку подлинности ASP.NET, протокол HTTPS или другие механизмы.To secure the endpoint properly, you should use ASP.NET authentication, HTTPS or other mechanisms.

См. такжеSee also