- •Практическое руководство по программной реализации wcf-служб
- •Как определить контракт службы WindowsCommunicationFoundation
- •Как реализовать контракт службы WindowsCommunicationFoundation
- •Реализация контракта службы wcf
- •Как размещать и запускать базовую службу WindowsCommunicationFoundation
- •Создание консольного приложения для размещения службы.
- •Как создать клиент Windows Communication Foundation
- •Создание клиента Windows Communication Foundation
- •Как настроить базовый клиент Windows Communication Foundation
- •Настройка клиента Windows Communication Foundation
- •Как использовать клиент Windows Communication Foundation
- •Использование клиента Windows Communication Foundation
- •Настройка служб с использованием файлов конфигурации
- •Основные разделы файла конфигурации
- •Практическое руководство. Конфигурации привязок и поведения
- •Слияние поведений
- •Как разместить службу wcf в iis
- •Создание службы, размещенной в iis
- •Служебное средство ServiceModel Metadata Utility Tool (Svcutil.Exe)
- •Функциональные возможности
- •Время ожидания
- •Настройка для различных версий
- •Доступ к документам wsdl
- •Использование программы SvcUtil.Exe
- •Типичные способы использования
- •Создание кода
- •Экспорт метаданных
- •Проверка службы
- •Загрузка метаданных
- •Создание типа XmlSerializer
- •Примеры
- •Максимальная квота на количество символов в таблице имен.
- •Вопросы безопасности
Экспорт метаданных
При помощи Svcutil.exe можно экспортировать метаданные для служб, контрактов и типов данных в скомпилированных сборках. Чтобы экспортировать метаданные для службы, необходимо использовать параметр /serviceName для задания службы, которую следует экспортировать. Для экспорта всех типов контрактов данных внутри сборки используется параметр /dataContractOnly. По умолчанию метаданные экспортируются для всех контрактов служб во входных сборках.
svcutil.exe
[/t:metadata] [/serviceName:<serviceConfigName>]
[/dataContractOnly] <assemblyPath>*
Аргумент |
Описание | |
assemblyPath |
Задает путь к сборке, которая содержит службы, контракты или типы контрактов данных для экспорта. Для предоставления нескольких файлов в качестве входных данных можно использовать стандартные подстановочные знаки командной строки. | |
Параметр |
Описание | |
/serviceName:<serviceConfigName> |
Задает имя конфигурации службы для экспорта. При использовании этого параметра в качестве входных данных необходимо передать исполняемую сборку со связанным файлом конфигурации. Svcutil.exe осуществляет поиск всех связанных файлов конфигурации для конфигурации службы. Если файлы конфигурации содержат какие-либо типы расширения, сборки, в состав которых входят эти типы, должны находиться в глобальном кэше сборок или явно предоставляться с использованием параметра /reference. | |
/reference:<путь к файлу> |
Добавляет заданную сборку в набор сборок, используемых для разрешения ссылок на типы. При экспорте или проверке службы, использующей сторонние расширения (поведения, привязки и элементы привязок), которые зарегистрированы в конфигурации, этот параметр необходимо использовать для определения местоположения сборок расширения, которые находятся не в глобальном кэше сборок. Сокращенная форма: /r | |
/dataContractOnly |
Работает только с типами контрактов данных. Контракты служб не обрабатываются. Для этого параметра следует задавать только локальные файлы метаданных. Сокращенная форма: /dconly | |
/excludeType:<тип> |
Задает полное имя типа или имя типа с указанием на сборку, который необходимо исключить из экспорта. Этот параметр можно использовать при экспорте метаданных для службы или набора контрактов службы для запрещения экспорта этих типов. Данный параметр не может использоваться одновременно с параметром /dconly. Если в одной сборке содержится несколько служб, каждая из которых использует отдельные классы с одним и тем же именем XSD, для данного переключателя необходимо задать имя службы вместо имени класса XSD. XSD или типы контрактов данных не поддерживаются. Сокращенная форма: /et |
Проверка службы
Проверка проводится для выявления ошибок в реализациях службы без размещения службы. Для указания службы для проверки используется параметр /serviceName.
svcutil.exe
/validate /serviceName:<serviceConfigName> <assemblyPath>*
Аргумент |
Описание | |
assemblyPath |
Задает путь к сборке, содержащей типы службы для проверки. Сборка должна содержать связанный файл конфигурации для предоставления конфигурации службы. Для предоставления нескольких сборок можно использовать стандартные подстановочные знаки командной строки. | |
Параметр |
Описание | |
/validate |
Проверяет реализацию службы, заданную параметром /serviceName. При использовании этого параметра в качестве входных данных необходимо передать исполняемую сборку со связанным файлом конфигурации. Сокращенная форма: /v | |
/serviceName:<serviceConfigName> |
Задает имя конфигурации службы для проверки. Svcutil.exe осуществляет поиск всех связанных файлов конфигурации всех входных сборок для конфигурации службы. Если файлы конфигурации содержат какие-либо типы расширения, сборки, в состав которых входят эти типы, должны находиться в глобальном кэше сборок или явно предоставляться с использованием параметра /reference. | |
/reference:<путь к файлу> |
Добавляет заданную сборку в набор сборок, используемых для разрешения ссылок на типы. При экспорте или проверке службы, использующей сторонние расширения (поведения, привязки и элементы привязок), которые зарегистрированы в конфигурации, этот параметр необходимо использовать для определения местоположения сборок расширения, которые находятся не в глобальном кэше сборок. Сокращенная форма: /r | |
/dataContractOnly |
Работает только с типами контрактов данных. Контракты служб не обрабатываются. Для этого параметра следует задавать только локальные файлы метаданных. Сокращенная форма: /dconly | |
/excludeType:<тип> |
Задает полное имя типа или имя типа с указанием на сборку, который необходимо исключить из проверки. Сокращенная форма: /et |