Condividi tramite


PeerCollaboration.GetPeersNearMe Metodo

Definizione

Restituisce l'insieme di tutti gli endpoint PeerCollaboration attualmente connessi alla rete subnet del peer chiamante.

public:
 static System::Net::PeerToPeer::Collaboration::PeerNearMeCollection ^ GetPeersNearMe();
[System.Security.SecurityCritical]
public static System.Net.PeerToPeer.Collaboration.PeerNearMeCollection GetPeersNearMe ();
[<System.Security.SecurityCritical>]
static member GetPeersNearMe : unit -> System.Net.PeerToPeer.Collaboration.PeerNearMeCollection
Public Shared Function GetPeersNearMe () As PeerNearMeCollection

Restituisce

Oggetto PeerNearMeCollection contenente tutti gli endpoint PeerCollaboration attualmente connessi all'ambito "Persone nelle vicinanze".

Se nella subnet non viene rilevato alcun peer, viene restituito un insieme avente dimensioni nulle.

Attributi

Eccezioni

Il peer non è connesso all'ambito "Persone nelle vicinanze".

Il tentativo di enumerazione di tutti gli endpoint Persone nelle vicinanze noti ha comportato la restituzione di un valore non valido.

Esempio

Nell'esempio di codice seguente viene illustrato come recuperare PeersNearMe come PeerNearMeCollection:

//This function retrieves the peers near me as a PeerNearMeCollection.
public static PeerNearMeCollection GetPeersNearMe()
{
    PeerNearMeCollection peers = null;
    try
    {
        peers = PeerCollaboration.GetPeersNearMe();
        if (peers == null ||
            peers.Count == 0)
        {
            Console.WriteLine("There are no peers near me.");
        }
        foreach (PeerNearMe pnm in peers)
        {
            Console.WriteLine("Getting the peers near me: {0}, nickname {1}, isOnline {2}",
                pnm.ToString(),
                pnm.Nickname,
                pnm.IsOnline);
        }
    }
    catch (PeerToPeerException p2pEx)
    {
        Console.WriteLine("Could not obtain an enumeration of the peers near me: {0}", p2pEx.Message);
    }
    catch (InvalidOperationException ioEx)
    {
        Console.WriteLine("The application is no longer signed into the Peer Collaboration Infrastructure: {0}",
            ioEx.Message);
    }
    catch (Exception ex)
    {
        Console.WriteLine("Unexpected exception caught when trying to enumerate the peers near me: {0}",
            ex.Message);
    }

    return peers;
}

Commenti

La restituzione di un oggetto completamente popolato PeerNearMeCollection tramite questo metodo può richiedere un periodo di tempo indeterminato dopo l'accesso a seconda della topologia di rete e della latenza.

La chiamata a questo metodo richiede un PermissionState oggetto .Unrestricted Questo stato viene creato all'inizio della sessione di Peer collaborazione.

Si applica a