Поделиться через


Конфигурация удаленных приложений

Этот раздел относится к технологии прежних версий, которая сохраняется для обеспечения обратной совместимости с существующими приложениями и не рекомендуется для разработки новых приложений. Сейчас распределенные приложения следует создавать с помощью  Windows Communication Foundation (WCF).

Для правильной работы инфраструктуры удаленного взаимодействия .NET требуется определенная информация. Удаленные типы можно настраивать двумя способами: можно либо вызывать методы конфигурации непосредственно в коде сервера или клиента (подробные сведения см. в разделе Программная настройка), либо создать раздел конфигурации удаленного взаимодействия и включить его в файл конфигурации приложения Web.config или Machine.config (подробные сведения см. в разделе Конфигурация удаленного объекта). У каждого из подходов к настройке есть свои преимущества и недостатки, поэтому окончательный выбор зависит от предпочтений разработчика.

Чтобы тип поддерживал удаленное взаимодействие, системе удаленного взаимодействия необходимо предоставить следующие сведения:

  • тип активации для типа;

  • полные метаданные, описывающие тип;

  • канал, зарегистрированный для обработки запросов этого типа;

  • URL-адрес, однозначно определяющий объект данного типа. В случае активации сервером это означает универсальный код ресурса (URI), уникальный для данного типа. В случае активации клиентом будет назначен URL-адрес, уникальный для конкретного экземпляра.

Эти сведения требуются клиенту и серверу инфраструктуры удаленного взаимодействия для создания прокси и управления вызовами методов удаленного серверного объекта. Кроме того, могут задаваться специальные параметры конфигурации для клиентов. Если клиентское приложение запрашивает объект, активируемый клиентом, клиент может запросить продления времени существования этого экземпляра. Наконец, если клиент ожидает какого-либо обратного вызова, он сам может зарегистрировать канал для ожидания этого обратного вызова. (Во всех остальных случаях система удаленного взаимодействия .NET автоматически находит совместимый клиентский канал, если он имеется.) На серверах могут задаваться значения времени существования по умолчанию для объектов, активируемых клиентом, или особые пользовательские методы активации, которые следует использовать.

Если настраивается серверный канал TCP или HTTP для сервера удаленного взаимодействия .NET, и на сервере установлено несколько сетевых карт или сетевая карта, адрес которой изменяется (например, беспроводная сетевая карта), необходимо настроить канал таким образом, чтобы он использовал свойство machineName, чтобы система удаленного взаимодействия .NET Framework гарантированно могла обнаружить компьютер сервера. Дополнительные сведения см. в описании свойства machineName в разделе Свойства конфигурации канала и модуля форматирования.

Если перед попыткой создания экземпляра объекта, поддерживающего удаленное взаимодействие, были указаны все сведения об этом объекте, можно использовать оператор new (New в Visual Basic); в противном случае следует использовать метод Activator.GetObject или Activator.CreateInstance.

b8tysty8.note(ru-ru,VS.100).gifПримечание
Хотя в файле конфигурации приложения содержится лишь несколько параметров, относящихся к системе удаленного взаимодействия .NET, большинство проблем с использованием удаленного взаимодействия .NET происходит потому, что некоторые из этих параметров заданы неверно или не соответствуют параметрам конфигурации для клиентских приложений. Очень легко допустить ошибку при вводе имени, забыть номер порта или не указать атрибут. При возникновении проблем с приложением удаленного взаимодействия в первую очередь необходимо проверить параметры конфигурации.

См. также

Справочник

Схема параметров удаленного взаимодействия

Основные понятия

Проблемы, связанные с метаданными
URL-адреса активации
Программная настройка
Автоматическая десериализация при удаленном взаимодействии .NET Framework.
Свойства конфигурации канала и модуля форматирования
Размещение удаленных объектов в службах IIS
Пример удаленного взаимодействия. Размещение в службах IIS

Другие ресурсы

Общие сведения о средствах удаленного взаимодействия платформы .NET Framework