PeerNameRegistration.Start Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Registra la proprietà PeerName nel Cloud. Se nessuna proprietà EndPointCollection è specificata, la selezione automatica degli indirizzi viene usata con il valore di porta specificato dalla proprietà Port.
public:
void Start();
[System.Security.SecurityCritical]
public void Start ();
[<System.Security.SecurityCritical>]
member this.Start : unit -> unit
Public Sub Start ()
- Attributi
Eccezioni
La proprietà PeerName è impostata su null
.
Su questo oggetto è stata chiamata in precedenza la funzione Dispose().
L'oggetto PeerName specificato è già stato registrato. È necessario usare il metodo Update() per aggiornare una registrazione.
Il peer remoto non possiede la proprietà Authority per l'oggetto PeerName specificato.
L'oggetto PeerName o Data non è specificato. È necessario specificarne almeno uno.
Il messaggio o gli elementi dati non sono validi oppure la proprietà UseAutoEndPointSelection non è impostata e nessun BLOB di dati o IPEndPoint è specificato.
Esempio
L'esempio di codice seguente crea un oggetto PeerName e lo registra insieme ai metadati specificati.
// Creates a PeerName and registers it along with the metadata specified
// The parameters used to register the name are static types that are set
// from user input (command-line or user dialog).
// These parameters include the following:
// static String peerName
// static PeerNameType peerNameType
// static int portNumber
// static String comment
// static Cloud cloudName
public static void CreateAndPublishPeerName()
{
try{
// Creates a the PeerName to register using the classifier and type provided
PeerName peerName = new PeerName(peerNameClassifier, peerNameType);
// Create a registration object which represents the registration
// of the PeerName in a Cloud
PeerNameRegistration peerNameRegistration = new PeerNameRegistration();
peerNameRegistration.PeerName = peerName;
peerNameRegistration.Port = portNumber;
peerNameRegistration.Comment = comment;
peerNameRegistration.Cloud = cloudName;
// Since the peerNameRegistration.EndPointCollection is not specified,
// all (IPv4&IPv6) addresses assigned to the local host will
// automatically be associated with the peerNameRegistration instance.
// This behavior can be control using peerNameRegistration.UseAutoEndPointSelection
//Note: Additional information may be specified on the PeerNameRegistration
// object, which is not shown in this example.
// Starting the registration means the name is published for
// other peers to resolve
peerNameRegistration.Start();
Console.WriteLine("Registration of Peer Name: {0} complete.", peerName.ToString(), cloudName);
Console.WriteLine();
Console.WriteLine("Press any key to stop the registration and close the program");
Console.ReadKey();
// Stopping the registration means the name is no longer published
peerNameRegistration.Stop();
} catch(Exception e){
Console.WriteLine("Error creating and registering the PeerName: {0} \n", e.Message);
Console.WriteLine(e.StackTrace);
}
}
Commenti
Il metodo registra il nome peer specificato nella PeerName proprietà con tutti gli indirizzi di origine e l'oggetto Port specificato nel costruttore. La porta predefinita viene usata da questo metodo solo quando non viene specificato alcun endpoint.
Se la Cloud proprietà è null
, questo metodo registra il nome peer specificato nella PeerName proprietà usando il Available campo , che inizializza i valori predefiniti per Name, Scopee ScopeId.
Dopo l'avvio di un PeerNameRegistration oggetto, il Stop metodo viene usato per arrestarlo.
Per aggiornare una registrazione, è necessario utilizzare il Update metodo .