IChannel.ChannelPriority Proprietà

Definizione

Ottiene la priorità del canale.

public int ChannelPriority { get; }
public int ChannelPriority { [System.Security.SecurityCritical] get; }

Valore della proprietà

Intero che indica la priorità del canale.

Attributi

Eccezioni

Il chiamante immediato non dispone dell'autorizzazione di infrastruttura.

Esempio

// Creating the 'IDictionary' to set the server object properties.
IDictionary myDictionary = new Hashtable();
myDictionary["name"]="HttpClientChannel";
myDictionary["priority"]=2;
// Set the properties along with the constructor.
HttpClientChannel myHttpClientChannel =
      new HttpClientChannel(myDictionary,new BinaryClientFormatterSinkProvider());
// Register the server channel.
ChannelServices.RegisterChannel(myHttpClientChannel);
MyHelloServer myHelloServer1 = (MyHelloServer)Activator.GetObject(
typeof(MyHelloServer), "http://localhost:8085/SayHello");
if (myHelloServer1 == null)
   {
       System.Console.WriteLine("Could not locate server");
   }
   else
{
   Console.WriteLine(myHelloServer1.myHelloMethod("Client"));
   // Get the name of the channel.
   Console.WriteLine("Channel Name :"+myHttpClientChannel.ChannelName);
   // Get the channel priority.
   Console.WriteLine("ChannelPriority :"+myHttpClientChannel.ChannelPriority.ToString());
   string myString,myObjectURI1;
   Console.WriteLine("Parse :" +
       myHttpClientChannel.Parse("http://localhost:8085/SayHello",out myString)+myString);
   // Get the key count.
   System.Console.WriteLine("Keys.Count : " + myHttpClientChannel.Keys.Count);
   // Get the channel message sink that delivers message to the specified url.
   IMessageSink myIMessageSink =
   myHttpClientChannel.CreateMessageSink("http://localhost:8085/NewEndPoint",
                                                                   null,out myObjectURI1);
   Console.WriteLine("The channel message sink that delivers the messages to the URL is : "
                           +myIMessageSink.ToString());
   Console.WriteLine("URI of the new channel message sink is: " +myObjectURI1);
}

Commenti

I numeri più alti indicano una priorità più alta, quindi un canale con priorità 50 ha una priorità più alta rispetto a un canale con priorità 25. Il canale tra domini dell'applicazione ha una priorità pari a 100.

Ai canali client con priorità più alta viene data la prima possibilità di connettersi a un oggetto remoto specificato da un URL o da una particolare voce di dati del canale da un oggetto ObjRef.

Per i canali server, la priorità indica l'ordine in cui i dati del canale verranno visualizzati in un ObjRefoggetto , che a sua volta influisce sull'ordine in cui i client tenteranno di connettersi all'oggetto server. Se il server è in ascolto su un canale HTTP con priorità 50 e un canale TCP con priorità 25 e il client ha registrato sia un canale HTTP che TCP, il client userà il canale HTTP per comunicare con il server.

Si applica a

Prodotto Versioni
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

Vedi anche