Опубликован: 24.01.2007 | Доступ: свободный | Студентов: 1250 / 82 | Оценка: 4.37 / 4.17 | Длительность: 14:27:00
ISBN: 978-5-94774-627-3
Лекция 6:

Настроечные параметры Microsoft .NET

Изучение группы <system.runtime.remoting>

Группа <system.runtime.remoting> содержит большое количество разделов и элементов для настройки remoting (удаленного взаимодействия). В этом параграфе рассказывается о том, как использовать этот раздел настроек.

Совет. Для работы с данными параметрами и их изменения применяется также инструмент .NET Configuration. Этот инструмент описывается в приложении A.

Мы познакомимся со следующими разделами.

  • <application>. Объявляет удаленные объекты, используемые приложением, и объекты, предоставляемые приложением.
  • <channels>. Содержит шаблоны каналов.
  • <channelSinkProviders>. Содержит провайдеров приемников каналов, используемых в цепочке приемников канала.
  • <debug>. Позволяет потребовать от системы remoting загрузки всех типов remoting при запуске приложения, что облегчает перехват ошибок, возникающих в настроечном файле.
Замечание. Имеется несколько элементов, которые можно использовать в нескольких разделах. Чтобы избежать дублирования информации в книге, я буду последовательно описывать разделы, а затем ссылаться на объяснения в других разделах, использующих этот же элемент.

Работа с разделом <application>

Раздел <application> содержит большое количество подразделов, которые определяют удаленные объекты, предоставляемые и используемые приложением. Прежде чем перейти к другим разделам, опишем свойство name раздела <application>. Это свойство указывает имя приложения, используемое для URL активации. При размещении приложения при помощи IIS это свойство использовать нельзя.

Дополнительная информация. URL активации – это URL, используемый для доступа к удаленному объекту. Его синтаксис включает протокол, имя компьютера, порт и имя приложения; имеет вид protocol//:computername:port/applicationname.

Ниже приведен синтаксис свойства name.

<system.runtime.remoting>
  <application name="applicationName" />
</system.runtime.remoting>

Указанное здесь имя приложения используется в активационном URL.

В разделе <application> имеется несколько подразделов.

  • <channels>. Определяет каналы для взаимодействия с удаленными объектами.
  • <client>. Определяет объекты, используемые приложением.
  • <lifetime>. Служит для настройки времени жизни всех удаленных объектов данного приложения.
  • <service>. Определяет объекты, предоставляемые приложением.
  • <soapInterop>. Определяет тип соответствий для SOAP.
Использование раздела <channels>

Этот раздел настраивает каналы, используемые приложением для взаимодействия с удаленными объектами. В разделе можно настроить шаблоны указания каналов, а также объявить новые каналы. Единственный раздел, включенный в него, называется <channel>.

Использование раздела <channel>. Раздел <channel> настраивает канал, который ссылается на шаблон канала, либо новый канал. Ниже приведен синтаксис для объявления нового канала.

<application>
  <channels>
    <channel type="Channel Type, Channel Assembly"
      displayName="Name" port="Port"
      customChannelProperty="Property Value" />
  </channels>
</application>

Ниже показан синтаксис объявления канала, который ссылается на шаблон канала.

<application>
  <channels>
    <channel ref="Channel Reference" displayName="Name"
      port="Port" />
  </channels>
</application>

Свойства обоих методов объявления перечислены в табл. 6.9.

Таблица 6.9. Свойства <channel>
Свойство Описание
ref Определяет ID шаблона, используемого каналом. При указании данного свойства свойство type не указывается.
displayName Определяет имя, под которым .NET Framework Configuration Tool будет использовать этот канал. Для других целей данное свойство не используется.
type Определяет полное имя типа канала и имя сборки, в которой расположена реализация канала.
port Определяет порт, используемый каналом. Некоторые шаблоны каналов уже включают спецификацию порта, но другие требуют его явного указания.
customChannelProperty Определяет собственное свойство канала. Для каждого канала может быть создано любое количество таких свойств.

При объявлении ваших каналов воспользуйтесь подразделами <clientProviders> и <serverProviders>. Они аналогичны подразделам из раздела <channels> раздела <system.runtime.remoting>. За дополнительной информацией обратитесь к параграфу "Работа с разделом <channels> " далее в лекции.

Использование раздела <client>

Раздел <client> служит для указания объектов, используемых данным приложением. Ниже приведен синтаксис для объявления объекта.

<application>
  <client url="object url" displayName="name" />
</application>

Свойства раздела <client> перечислены в табл. 6.10.

Таблица 6.10. Свойства <client>
Свойство Описание
url Определяет URL данного объекта. Требуется для объектов, активизируемых клиентом, но необязателен для объектов, активизируемых сервером.
displayName Используется в .NET Framework Configuration Tool для предоставления списка клиентов. Для других целей не используется.

Раздел <client> содержит также элементы <wellknown> и <activated>.

Использование элемента <wellknown>. Раздел <wellknown> позволяет указывать информацию об общеизвестных объектах, активизируемых сервером. Ниже приведен его синтаксис.

<application>
  <client>
    <wellknown url="URL" displayName="Name"
      type="Type, Assembly" />
  </client>
</application>

Свойства раздела <wellknown> перечислены в табл. 6.11.

Таблица 6.11. Свойства <wellknown>
Свойство Описание
url Определяет полный URL для типа, включая URI для объекта.
displayName Определяет имя, используемое при создании списка клиентов в .NET Framework Configuration Tool.
type Определяет полное имя типа объекта и имя сборки.

Использование элемента <activated>. Элемент <activated> предоставляет информацию об объектах, активизируемых клиентом. Если используется элемент <activated>, то элемент <client> должен содержать свойство URL. Ниже приведен синтаксис элемента <activated>.

<application>
  <client>
    <activated type="Remote Type, Remote Assembly" />
  </client>
</application>

Свойство type указывает на полное имя типа и сборку, которая содержит реализацию этого типа.

Геннадий Щербаков
Геннадий Щербаков

В начале года получил код dreamspark  H4RQ9-QJ6FD-YJWJT-P6FVF-HGXQZ. При  его вводе- сообщение что он просрочен.