ContactManager.DeleteContact Method (PeerName)

 

Removes the PeerContact associated with the specified PeerName from the ContactManager of the local peer.

Namespace:   System.Net.PeerToPeer.Collaboration
Assembly:  System.Net (in System.Net.dll)

[SecurityCriticalAttribute]
public void DeleteContact(
	PeerName peerName
)

Parameters

peerName
Type: System.Net.PeerToPeer.PeerName

The PeerName associated with the PeerContact to remove from the ContactManager.

Exception Condition
ArgumentException

The PeerContact associated with PeerName could not be found in the contact manager.

ArgumentNullException

peerName is null.

ObjectDisposedException

This object has had Dispose previously called on it and cannot be used for future operations.

PeerToPeerException

Unable to complete DeleteContact operation.

Calling this method requires a PermissionState of Unrestricted.

The following code example illustrates how to delete a PeerContact from the local ContactManager:

//Enumerating the contacts and letting the user choose which one to delete.
public static void DeleteContact() 
{
    PeerContactCollection pcc = null;
    string contactToDelete = "";

    try
    {
        pcc = EnumContacts();
        if (pcc == null ||
            pcc.Count == 0)
        {
            Console.WriteLine("Contact list is empty -- no such contact exists.");
            return;
        }
        Console.Write("Please enter the nickname of the contact you wish to delete: ");
        contactToDelete = Console.ReadLine();

        foreach (PeerContact pc in pcc)
        {
            if (pc.Nickname.Equals(contactToDelete))
            {
                PeerCollaboration.ContactManager.DeleteContact(pc);
                Console.WriteLine("Contact {0} successfully deleted!", contactToDelete);
                return;
            }
        }
        Console.WriteLine("Contact {0} could not be found in the contact collection.", contactToDelete);
    }
    catch (ArgumentNullException argNullEx)
    {
        Console.WriteLine("The supplied contact is null: {0}", argNullEx.Message);
    }
    catch (ArgumentException argEx)
    {
        Console.WriteLine("The supplied contact \"{0}\" could not be found in the Contact Manager: {1}", 
            contactToDelete, argEx.Message);
    }
    catch (PeerToPeerException p2pEx)
    {
        Console.WriteLine("The Peer Collaboration Infrastructure could not delete \"{0}\": {1}",
            contactToDelete, p2pEx.Message);
    }
    catch (Exception ex)
    {
        Console.WriteLine("Unexpected exception when trying to delete a contact : {0}", ex);
    }
    return;
}

.NET Framework
Available since 3.5
Return to top
Show: