Регистрация на стороне сервера

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

Объекты, активируемые сервером или клиентом, обычно регистрируются в файле Web.config, если они размещаются в службах IIS, или в файле конфигурации, если объекты размещаются непосредственно в приложении. Помещайте все объекты, размещаемые в приложении, в элемент <service>.

При публикации активируемых сервером объектов (<wellknown>) необходимо указать, является ли объект SingleCall или Singleton, задать тип объекта, а также конечную точку, из которой возможен доступ к объекту. При публикации объектов, активируемых клиентом (<activated>), необходимо указать только тип объекта.

Настройка активируемых сервером типов с помощью служб IIS

Если планируется разместить удаленную службу в службах IIS, чтобы воспользоваться их преимуществами, в файл конфигурации необходимо внести небольшие изменения. Можно с помощью файла Web.config настроить службы IIS таким образом, чтобы они автоматически обрабатывали запросы заданного типа, либо можно воспользоваться обработчиком Application_Start в файле Global.asax, чтобы загружать файл конфигурации с помощью метода RemotingConfiguration.Configure, которому передается имя файла конфигурации. В обоих случаях следует соблюдать следующие правила.

  • Не задавайте имя приложения с помощью атрибута name тега <application>. Виртуальный каталог, создаваемый для размещения удаленного типа, будет использоваться в качестве имени приложения для клиентов заданного типа.

  • Не задавайте порт с помощью атрибута port тега <channel> внутри тега <application>. Если службы IIS создадут новый поток для обработки возросшего числа запросов, может быть создан новый канал, однако при этом будет создано исключение, поскольку порт уже используется исходным каналом. Вместо этого укажите порт, который будет использоваться диспетчером интернет-служб. Службы удаленного взаимодействия .NET будут обрабатывать все запросы удаленного типа с использованием этого порта.

См. также

Задачи

Как регистрировать активируемый сервером объект и активируемый клиентом объект для главного домена приложения.

Справочник

System.Runtime.Remoting.RemotingConfiguration Class

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

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

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

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