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


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.

Применяется к