PeerEndPointCollection Classe

Definizione

Rappresenta un contenitore per gli elementi di un oggetto PeerEndPoint.Represents a container for elements of a PeerEndPoint object. Un'istanza di questo tipo viene restituita dalla classe Peer.An instance of this type is returned by the Peer class.

public ref class PeerEndPointCollection : System::Collections::ObjectModel::Collection<System::Net::PeerToPeer::Collaboration::PeerEndPoint ^>, IEquatable<System::Net::PeerToPeer::Collaboration::PeerEndPointCollection ^>
[System.Serializable]
public class PeerEndPointCollection : System.Collections.ObjectModel.Collection<System.Net.PeerToPeer.Collaboration.PeerEndPoint>, IEquatable<System.Net.PeerToPeer.Collaboration.PeerEndPointCollection>
type PeerEndPointCollection = class
    inherit Collection<PeerEndPoint>
    interface IEquatable<PeerEndPointCollection>
Public Class PeerEndPointCollection
Inherits Collection(Of PeerEndPoint)
Implements IEquatable(Of PeerEndPointCollection)
Ereditarietà
PeerEndPointCollection
Attributi
Implementazioni

Esempi

   // Displays all contacts and asssociated peer endpoints (PeerEndPoint) in the PeerContactCollection.
   private static void DisplayContacts(PeerContactCollection peerContactsCollection)
   {
       if (peerContactsCollection == null ||
           peerContactsCollection.Count == 0)
       {
           Console.WriteLine("No contacts to display. To add a contact select option 0 from the menu.");
       }
       else
       {
           foreach (PeerContact pc in peerContactsCollection)
           {
               Console.WriteLine("The contact is: {0}", pc.DisplayName);
               DisplayEndpoints(pc.PeerEndPoints);
           }
       }
       return;
   }
   
   //------------------------------------------------------------------------------------------------------
   //------------------------------------------------------------------------------------------------------
   // Displays all peer end points (PeerEndPoint) in the PeerEndPointCollection.

   private static void DisplayEndpoints(PeerEndPointCollection endpointCollection)
   {
       if (endpointCollection == null ||  endpointCollection.Count == 0)
           Console.WriteLine("No peer endpoints in the collection to display.");
       else
       {
           foreach (PeerEndPoint pep in endpointCollection)
           {
               Console.WriteLine("PeerEndPoint is: {0}", pep);
               Console.WriteLine("PeerEndPoint data is:\n  Name: {0}\n EndPoint IP address: {1}\n . Port: {2}\n",
                   pep.Name,
                   pep.EndPoint.Address,
                   pep.EndPoint.Port);
           }
       }
       return;
   }
   
   //------------------------------------------------------------------------------------------------------
   //------------------------------------------------------------------------------------------------------
   //List PeerNearMe objects that may be added as contacts.
   
   private static void AddContact()
   {
       PeerNearMeCollection pnmc = null;
       PeerContactCollection peerContacts = null;            
       bool peerNameFound = false;

       PeerApplication application = null;

       try
       {
           Console.WriteLine("Listing the existing contacts...");
           peerContacts = PeerCollaboration.ContactManager.GetContacts();
       }
       catch (PeerToPeerException p2pEx)
       {
           Console.WriteLine("The Peer Collaboration Infrastructure is not responding to the contact enumeration request: {0}", p2pEx.Message);
       }
       catch (Exception ex)
       {
           Console.WriteLine("An unexpected error occurred while attempting to obtain the contact list: {0}", ex.Message);
       }

       DisplayContacts(peerContacts);

       try
       {
           //Adds one of the PeerNearMe objects as a contact.                               
           pnmc = GetPeersNearMe();
           Console.WriteLine("Please enter the nickname of the peer you wish to add as a contact:");
           string peerNameToAdd = Console.ReadLine();

           application = RegisterCollabApp();

           foreach (PeerNearMe pnm in pnmc)
           {
               PeerInvitationResponse res = null;
               if (pnm.Nickname.Contains(peerNameToAdd))
               {
                   peerNameFound = true;
                   if (!peerContacts.ToString().Contains(pnm.Nickname))
                   {
                       Console.WriteLine("Adding peer {0} to the contact list.", pnm.Nickname);
                       pnm.AddToContactManager();
                   }
                   else
                   {
                       Console.WriteLine("This peer already exists in your contact list.");
                       Console.WriteLine("Sending invitation using the Contact structure instead of the PeerNearMe.");
                       foreach (PeerContact pc in peerContacts)
                       {
                           if (pc.Nickname.Equals(pnm.Nickname))
                           {
                               res = pnm.Invite(application, "Peer Collaboration Sample", application.Data);
                               if (res.PeerInvitationResponseType == PeerInvitationResponseType.Accepted)
                               {
                                   Console.WriteLine("Invitation to contact succeeded.");
                               }
                               else
                               {
                                   Console.WriteLine("Invitation to contact {0}.", res.PeerInvitationResponseType);
                               }
                           }
                       }

                   }
               }
           }

           if (!peerNameFound)
           {
               Console.WriteLine("No such peer exists near you. Cannot add to contacts.");
               return;
           }

           peerContacts = PeerCollaboration.ContactManager.GetContacts();

           Console.WriteLine("Listing the contacts again...");
           DisplayContacts(peerContacts);

       }
       catch (Exception ex)
       {
           Console.WriteLine("Error adding a contact: {0}", ex.Message);
       }
       finally
       {
           application.Dispose();
       }
       return;
   }

Proprietà

Count

Ottiene il numero di elementi effettivamente contenuti nell'oggetto Collection<T>.Gets the number of elements actually contained in the Collection<T>.

(Ereditato da Collection<T>)
Item[Int32]

Ottiene o imposta l'elemento in corrispondenza dell'indice specificato.Gets or sets the element at the specified index.

(Ereditato da Collection<T>)
Items

Ottiene un wrapper dell'oggetto IList<T> per l'insieme Collection<T>.Gets a IList<T> wrapper around the Collection<T>.

(Ereditato da Collection<T>)

Metodi

Add(T)

Aggiunge un oggetto alla fine di Collection<T>.Adds an object to the end of the Collection<T>.

(Ereditato da Collection<T>)
Clear()

Rimuove tutti gli elementi da Collection<T>.Removes all elements from the Collection<T>.

(Ereditato da Collection<T>)
ClearItems()

Rimuove tutti gli elementi da Collection<T>.Removes all elements from the Collection<T>.

(Ereditato da Collection<T>)
Contains(T)

Determina se un elemento è incluso in Collection<T>.Determines whether an element is in the Collection<T>.

(Ereditato da Collection<T>)
CopyTo(T[], Int32)

Copia l'intero oggetto Collection<T> in un oggetto Array compatibile unidimensionale, a partire dall'indice specificato della matrice di destinazione.Copies the entire Collection<T> to a compatible one-dimensional Array, starting at the specified index of the target array.

(Ereditato da Collection<T>)
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.Determines whether the specified object is equal to the current object.

(Ereditato da Object)
Equals(PeerEndPointCollection)

Confronta la classe PeerEndPointCollection con l'oggetto specificato.Compares the PeerEndPointCollection to the specified object.

GetEnumerator()

Restituisce un enumeratore che esegue l'iterazione di Collection<T>.Returns an enumerator that iterates through the Collection<T>.

(Ereditato da Collection<T>)
GetHashCode()

Funge da funzione hash predefinita.Serves as the default hash function.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Ereditato da Object)
IndexOf(T)

Cerca l'oggetto specificato e restituisce l'indice in base zero della prima occorrenza nell'intera classe Collection<T>.Searches for the specified object and returns the zero-based index of the first occurrence within the entire Collection<T>.

(Ereditato da Collection<T>)
Insert(Int32, T)

Inserisce un elemento in Collection<T> in corrispondenza dell'indice specificato.Inserts an element into the Collection<T> at the specified index.

(Ereditato da Collection<T>)
InsertItem(Int32, PeerEndPoint)

Inserisce un nuovo elemento PeerEndPoint nell'oggetto PeerEndPointCollection in corrispondenza della chiave o dell'indice specificato.Inserts a new PeerEndPoint element into the PeerEndPointCollection at the specified index or key.

InsertItem(Int32, T)

Inserisce un elemento in Collection<T> in corrispondenza dell'indice specificato.Inserts an element into the Collection<T> at the specified index.

(Ereditato da Collection<T>)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Ereditato da Object)
Remove(T)

Rimuove la prima occorrenza di un oggetto specifico da Collection<T>.Removes the first occurrence of a specific object from the Collection<T>.

(Ereditato da Collection<T>)
RemoveAt(Int32)

Rimuove l'elemento in corrispondenza dell'indice specificato di Collection<T>.Removes the element at the specified index of the Collection<T>.

(Ereditato da Collection<T>)
RemoveItem(Int32)

Rimuove l'elemento in corrispondenza dell'indice specificato di Collection<T>.Removes the element at the specified index of the Collection<T>.

(Ereditato da Collection<T>)
SetItem(Int32, PeerEndPoint)

Sostituisce l'elemento PeerEndPoint in corrispondenza dell'indice specificato.Replaces the PeerEndPoint element at the specified index.

SetItem(Int32, T)

Sostituisce l'elemento in corrispondenza dell'indice specificato.Replaces the element at the specified index.

(Ereditato da Collection<T>)
ToString()

Restituisce un String che rappresenta il valore corrente per ogni istanza della classe PeerEndPoint, separato da virgole.Returns a String representing the current value for each instance of PeerEndPoint, separated by commas.

Implementazioni dell'interfaccia esplicita

ICollection.CopyTo(Array, Int32)

Copia gli elementi di ICollection in Array a partire da un particolare indice Array.Copies the elements of the ICollection to an Array, starting at a particular Array index.

(Ereditato da Collection<T>)
ICollection.IsSynchronized

Ottiene un valore che indica se l'accesso a ICollection è sincronizzato (thread-safe).Gets a value indicating whether access to the ICollection is synchronized (thread safe).

(Ereditato da Collection<T>)
ICollection.SyncRoot

Ottiene un oggetto che può essere usato per sincronizzare l'accesso a ICollection.Gets an object that can be used to synchronize access to the ICollection.

(Ereditato da Collection<T>)
ICollection<T>.IsReadOnly

Ottiene un valore che indica se ICollection<T> è di sola lettura.Gets a value indicating whether the ICollection<T> is read-only.

(Ereditato da Collection<T>)
IEnumerable.GetEnumerator()

Restituisce un enumeratore che consente di eseguire l'iterazione di una raccolta.Returns an enumerator that iterates through a collection.

(Ereditato da Collection<T>)
IList.Add(Object)

Aggiunge un elemento a IList.Adds an item to the IList.

(Ereditato da Collection<T>)
IList.Contains(Object)

Stabilisce se IList contiene un valore specifico.Determines whether the IList contains a specific value.

(Ereditato da Collection<T>)
IList.IndexOf(Object)

Determina l'indice di un elemento specifico in IList.Determines the index of a specific item in the IList.

(Ereditato da Collection<T>)
IList.Insert(Int32, Object)

Inserisce un elemento nell'oggetto IList in corrispondenza dell'indice specificato.Inserts an item into the IList at the specified index.

(Ereditato da Collection<T>)
IList.IsFixedSize

Ottiene un valore che indica se IList ha dimensioni fisse.Gets a value indicating whether the IList has a fixed size.

(Ereditato da Collection<T>)
IList.IsReadOnly

Ottiene un valore che indica se IList è di sola lettura.Gets a value indicating whether the IList is read-only.

(Ereditato da Collection<T>)
IList.Item[Int32]

Ottiene o imposta l'elemento in corrispondenza dell'indice specificato.Gets or sets the element at the specified index.

(Ereditato da Collection<T>)
IList.Remove(Object)

Rimuove la prima occorrenza di un oggetto specifico da IList.Removes the first occurrence of a specific object from the IList.

(Ereditato da Collection<T>)

Metodi di estensione

CopyToDataTable<T>(IEnumerable<T>)

Restituisce un oggetto DataTable che contiene copie degli oggetti DataRow, dato un oggetto IEnumerable<T> di input dove il parametro generico DataRow è T.Returns a DataTable that contains copies of the DataRow objects, given an input IEnumerable<T> object where the generic parameter T is DataRow.

CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption)

Copia gli oggetti DataRow nell'oggetto DataTable specificato, dato un oggetto IEnumerable<T> di input dove il parametro generico T è DataRow.Copies DataRow objects to the specified DataTable, given an input IEnumerable<T> object where the generic parameter T is DataRow.

CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption, FillErrorEventHandler)

Copia gli oggetti DataRow nell'oggetto DataTable specificato, dato un oggetto IEnumerable<T> di input dove il parametro generico T è DataRow.Copies DataRow objects to the specified DataTable, given an input IEnumerable<T> object where the generic parameter T is DataRow.

Cast<TResult>(IEnumerable)

Esegue il cast degli elementi di un oggetto IEnumerable nel tipo specificato.Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

Filtra gli elementi di un oggetto IEnumerable in base a un tipo specificato.Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

Consente la parallelizzazione di una query.Enables parallelization of a query.

AsQueryable(IEnumerable)

Converte un oggetto IEnumerable in un oggetto IQueryable.Converts an IEnumerable to an IQueryable.

Ancestors<T>(IEnumerable<T>)

Restituisce una raccolta di elementi che contiene i predecessori di ciascun nodo nella raccolta di origine.Returns a collection of elements that contains the ancestors of every node in the source collection.

Ancestors<T>(IEnumerable<T>, XName)

Restituisce una raccolta di elementi filtrati che contiene i predecessori di ciascun nodo nella raccolta di origine.Returns a filtered collection of elements that contains the ancestors of every node in the source collection. Solo gli elementi che hanno un oggetto XName corrispondente vengono inclusi nella raccolta.Only elements that have a matching XName are included in the collection.

DescendantNodes<T>(IEnumerable<T>)

Restituisce una raccolta di nodi discendenti di ciascun documento ed elemento nella raccolta di origine.Returns a collection of the descendant nodes of every document and element in the source collection.

Descendants<T>(IEnumerable<T>)

Restituisce una raccolta di elementi che contiene gli elementi discendenti di ciascun elemento e documento nella raccolta di origine.Returns a collection of elements that contains the descendant elements of every element and document in the source collection.

Descendants<T>(IEnumerable<T>, XName)

Restituisce una raccolta filtrata di elementi che contiene gli elementi discendenti di ciascun elemento e documento nella raccolta di origine.Returns a filtered collection of elements that contains the descendant elements of every element and document in the source collection. Solo gli elementi che hanno un oggetto XName corrispondente vengono inclusi nella raccolta.Only elements that have a matching XName are included in the collection.

Elements<T>(IEnumerable<T>)

Restituisce una raccolta di elementi figlio di ciascun elemento e documento nella raccolta di origine.Returns a collection of the child elements of every element and document in the source collection.

Elements<T>(IEnumerable<T>, XName)

Restituisce una raccolta filtrata degli elementi figlio di ciascun elemento e documento nella raccolta di origine.Returns a filtered collection of the child elements of every element and document in the source collection. Solo gli elementi che hanno un oggetto XName corrispondente vengono inclusi nella raccolta.Only elements that have a matching XName are included in the collection.

InDocumentOrder<T>(IEnumerable<T>)

Restituisce una raccolta di nodi che contiene tutti i nodi nella raccolta di origine ordinati in base all'ordine con cui sono riportati nel documento.Returns a collection of nodes that contains all nodes in the source collection, sorted in document order.

Nodes<T>(IEnumerable<T>)

Restituisce una raccolta di nodi figlio di ciascun documento ed elemento nella raccolta di origine.Returns a collection of the child nodes of every document and element in the source collection.

Remove<T>(IEnumerable<T>)

Rimuove ciascun nodo nella raccolta di origine dal nodo padre.Removes every node in the source collection from its parent node.

Si applica a

Vedi anche