ChannelServices.RegisterChannel Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Перегрузки
RegisterChannel(IChannel) |
Устаревшие..
Регистрирует канал со службами канала. RegisterChannel(IChannel) устарел. Взамен рекомендуется использовать RegisterChannel(IChannel, Boolean). |
RegisterChannel(IChannel, Boolean) |
Регистрирует канал со службами канала. |
RegisterChannel(IChannel)
Внимание!
Use System.Runtime.Remoting.ChannelServices.RegisterChannel(IChannel chnl, bool ensureSecurity) instead.
Регистрирует канал со службами канала. RegisterChannel(IChannel) устарел. Взамен рекомендуется использовать RegisterChannel(IChannel, Boolean).
public:
static void RegisterChannel(System::Runtime::Remoting::Channels::IChannel ^ chnl);
public static void RegisterChannel (System.Runtime.Remoting.Channels.IChannel chnl);
[System.Obsolete("Use System.Runtime.Remoting.ChannelServices.RegisterChannel(IChannel chnl, bool ensureSecurity) instead.", false)]
public static void RegisterChannel (System.Runtime.Remoting.Channels.IChannel chnl);
static member RegisterChannel : System.Runtime.Remoting.Channels.IChannel -> unit
[<System.Obsolete("Use System.Runtime.Remoting.ChannelServices.RegisterChannel(IChannel chnl, bool ensureSecurity) instead.", false)>]
static member RegisterChannel : System.Runtime.Remoting.Channels.IChannel -> unit
Public Shared Sub RegisterChannel (chnl As IChannel)
Параметры
- chnl
- IChannel
Канал для регистрации.
- Атрибуты
Исключения
Параметр chnl
имеет значение null
.
Канал уже зарегистрирован.
По крайней мере у одного из вызывающих операторов, находящихся в верхней части стека вызовов, отсутствует разрешение на настройку типов и каналов удаленного взаимодействия.
Примеры
HttpChannel^ channel = gcnew HttpChannel( 9000 );
ChannelServices::RegisterChannel( channel, false );
RemotingConfiguration::RegisterWellKnownServiceType( SampleNamespace::SampleService::typeid, "MySampleService/SampleService::soap", WellKnownObjectMode::Singleton );
Console::WriteLine( "** Press enter to end the server process. **" );
Console::ReadLine();
HttpChannel channel = new HttpChannel(9000);
ChannelServices.RegisterChannel(channel);
RemotingConfiguration.RegisterWellKnownServiceType( typeof(SampleService),
"MySampleService/SampleService.soap", WellKnownObjectMode.Singleton);
Console.WriteLine("** Press enter to end the server process. **");
Console.ReadLine();
Dim channel As New HttpChannel(9000)
ChannelServices.RegisterChannel(channel)
RemotingConfiguration.RegisterWellKnownServiceType(GetType(SampleService), "MySampleService/SampleService.soap", WellKnownObjectMode.Singleton)
Console.WriteLine("** Press enter to end the server process. **")
Console.ReadLine()
Комментарии
Примечание
RegisterChannel(IChannel) устарел. Взамен рекомендуется использовать RegisterChannel(IChannel, Boolean).
Метод RegisterChannel принимает IChannel интерфейс из объекта канала. Канал ChannelName должен быть уникальным или анонимным. Канал является анонимным IChannel.ChannelName , если для задано значение null
или Empty с помощью name
свойства конфигурации.
Невозможно зарегистрировать два канала с одинаковым именем в AppDomain. По умолчанию имя HttpChannel объекта — "http", а имя TcpChannel — "tcp". Поэтому, если вы хотите зарегистрировать два канала одного типа, необходимо указать другое имя для одного из них с помощью свойств конфигурации.
Дополнительные сведения о свойствах конфигурации канала см. в разделе HttpChannel, и <элемент канала> (шаблон).
Применяется к
RegisterChannel(IChannel, Boolean)
Регистрирует канал со службами канала.
public:
static void RegisterChannel(System::Runtime::Remoting::Channels::IChannel ^ chnl, bool ensureSecurity);
public static void RegisterChannel (System.Runtime.Remoting.Channels.IChannel chnl, bool ensureSecurity);
static member RegisterChannel : System.Runtime.Remoting.Channels.IChannel * bool -> unit
Public Shared Sub RegisterChannel (chnl As IChannel, ensureSecurity As Boolean)
Параметры
- chnl
- IChannel
Канал для регистрации.
- ensureSecurity
- Boolean
Значение true
обеспечивает активизацию безопасности; в противном случае значение равно false
. Если задать значение false
, параметры безопасности в канале TCP или IPC не будут изменены.
Исключения
Параметр chnl
имеет значение null
.
Канал уже зарегистрирован.
По крайней мере у одного из вызывающих операторов, находящихся в верхней части стека вызовов, отсутствует разрешение настраивать типы и каналы удаленного взаимодействия.
Не поддерживается для HttpServerChannel. Разместите службу, используя IIS, если необходим защищенный HTTP-канал.
Комментарии
Метод RegisterChannel(IChannel, Boolean) получает IChannel интерфейс из объекта канала. Канал ChannelName должен быть уникальным или анонимным. Канал является анонимным IChannel.ChannelName , если для задано значение null
или Empty с помощью name
свойства конфигурации.
Невозможно зарегистрировать два канала с одинаковым именем в AppDomain. По умолчанию имя HttpChannel объекта — "http", а имя TcpChannel — "tcp". Поэтому, если вы хотите зарегистрировать два канала одного типа, необходимо указать другое имя для одного из них с помощью свойств конфигурации.
Дополнительные сведения о свойствах конфигурации канала см. в разделах Свойства конфигурации канала и Форматировщика и <элемент канала> (шаблон).
ensureSecurity
Если параметр имеет значение true
, система удаленного взаимодействия определяет, реализует ISecurableChannelли канал , и если да, включает шифрование и цифровые подписи. Исключение возникает, если канал не реализует ISecurableChannel.
Примечание
Если задано значение ensureSecurity
, RemotingExceptionHttpServerChannel для канала будет создаваться true
на всех платформах. Если вы хотите использовать безопасный канал HTTP, необходимо разместить службу в службах IIS.