PowerTCP Mail for .NET
Add(String) Method
Example 




The name of the new mailbox.
Add a new mailbox to the collection.
Syntax
Public Overloads Function Add( _
   ByVal name As String _
) As Mailbox
Dim instance As MailboxCollection
Dim name As String
Dim value As Mailbox
 
value = instance.Add(name)
public Mailbox Add( 
   string name
)
public: Mailbox* Add( 
   string* name
) 
public:
Mailbox^ Add( 
   String^ name
) 

Parameters

name
The name of the new mailbox.

Return Value

A Mailbox object representing the newly added mailbox.
Exceptions
ExceptionDescription
ProtocolExceptionBad IMAP protocol response received from server.
System.Net.Sockets.SocketExceptionThe requested address is not valid in its context.
System.InvalidOperationExceptionAttempt to illegally modify a server-side collection.
Remarks

Creates a new mailbox on the server with the specified name by sending the IMAP CREATE command. The new mailbox will be created under the currently selected (parent) mailbox. If there is no parent for this mailbox, the new mailbox will be a top-level mailbox.

After calling this method, the MailboxCollection will be automatically updated to reflect the current state of the collection.

Example
This example demonstrates how to create, rename and delete a mailbox. It also shows how to subscribe and unsubscribe a mailbox.
private void doMailboxFunctions(object sender)
{
    //Configure server and account info
    imap1.Session.RemoteEndPoint = new Dart.Mail.IPEndPoint(myServer, Imap.GetDefaultPort(imap1.Session));
    imap1.Session.Username = myUsername;
    imap1.Session.Password = myPassword;

    //Connect and log into the account
    imap1.Connect();
    imap1.Authenticate();

    //Create a mailbox
    Mailbox newBox = imap1.Mailboxes.Add("My_New_Box");

    //Subscribe the mailbox and check the subscribed list
    newBox.Subscribe();
    //Get all subscribed mailboxes
    List<Mailbox> list = imap1.List("", "%", true).ToList<Mailbox>();
    if (!list.Contains(newBox)) throw new Exception("Server did not subscribe the mailbox.");

    //Unsubscribe the mailbox and check the subscribed list
    newBox.Unsubscribe();
    list = imap1.List("", "%", true).ToList<Mailbox>();
    if (list.Contains(newBox)) throw new Exception("Server did not unsubscribe the mailbox.");

    //Rename the mailbox and then delete it
    newBox.Name = newBox.Name + "_Renamed";
    imap1.Mailboxes.Remove(newBox);

    //Gracefully logout of the session
    imap1.Close();
}
Private Sub doMailboxFunctions(ByVal sender As Object)
    'Configure server and account info
    imap1.Session.RemoteEndPoint = New Dart.Mail.IPEndPoint(myServer, Imap.GetDefaultPort(imap1.Session))
    imap1.Session.Username = myUsername
    imap1.Session.Password = myPassword

    'Connect and log into the account
    imap1.Connect()
    imap1.Authenticate()

    'Create a mailbox
    Dim newBox As Mailbox = imap1.Mailboxes.Add("My_New_Box")

    'Subscribe the mailbox and check the subscribed list
    newBox.Subscribe()
    'Get all subscribed mailboxes
    Dim list As List(Of Mailbox) = imap1.List("", "%", True).ToList()
    If Not list.Contains(newBox) Then
        Throw New Exception("Server did not subscribe the mailbox.")
    End If

    'Unsubscribe the mailbox and check the subscribed list
    newBox.Unsubscribe()
    list = imap1.List("", "%", True).ToList()
    If list.Contains(newBox) Then
        Throw New Exception("Server did not unsubscribe the mailbox.")
    End If

    'Rename the mailbox and then delete it
    newBox.Name = newBox.Name & "_Renamed"
    imap1.Mailboxes.Remove(newBox)

    'Gracefully logout of the session
    imap1.Close()
End Sub
See Also

Reference

MailboxCollection Class
MailboxCollection Members
Overload List


PowerTCP Mail for .NET Documentation Version 4.3
© 2018 Dart Communications. All Rights Reserved.
Send comments on this topic