SmtpSubmitToPickupFolder Method (String, String, String, String, Boolean)
Saves the mail message as a file in the pickup folder of MailBee.NET Queue or IIS SMTP service.

Namespace: MailBee.SmtpMail
Assembly: MailBee.NET (in MailBee.NET.dll) Version: 12.4 build 677 for .NET 4.5
Syntax
public string SubmitToPickupFolder(
	string pickupFolderName,
	string filename,
	string senderEmail,
	string recipientEmails,
	bool doubleFirstDotAtLine
)

Parameters

pickupFolderName
Type: SystemString
The full physical path to MailBee.NET Queue or IIS SMTP pickup folder (such as "C:\Inetpub\mailroot\Pickup").
filename
Type: SystemString
The filename (without folder path) of the file to be saved, or a null reference (Nothing in Visual Basic). If latter, MailBee will automatically generate a unique filename.
senderEmail
Type: SystemString
The e-mail address of the sender. If it's a null reference (Nothing in Visual Basic), the e-mail address is taken from From property.
recipientEmails
Type: SystemString
The comma-separted list of the recipients e-mail addresses. If it's a null reference (Nothing in Visual Basic), the recipients list is combined from To, Cc, and Bcc lists.
doubleFirstDotAtLine
Type: SystemBoolean
You must set it to true when submitting to IIS SMTP pickup folder and to false when using MailBee.NET Queue. SMTP protocol requires the client to double the dot character (make ".." from ".") when it appears at the beginning of a line. However, unlike MailBee.NET Queue, IIS SMTP service is not capable of performing this conversion, and doubleFirstDotAtLine parameter workarounds this (when true, MailBee itself will double dots when required).

Return Value

Type: String
On success, the filename (without folder path) of the file saved in the pickup folder; otherwise, a null reference (Nothing in Visual Basic).
Exceptions
ExceptionCondition
MailBeeExceptionAn error occurred and ThrowExceptions is true.
Remarks

This method can be used to submit messages directly to MailBee.NET Queue or IIS SMTP service bypassing SMTP protocol. This greatly improves performance of sending large volumes of e-mails when MailBee.NET Queue or IIS SMTP server is installed on the same machine or in the same LAN as the computer running MailBee. This method neither creates nor requires network connection.

To specify international e-mail addresses (IDN domains), call EscapeIdnDomain(String) for senderEmail string and for each individual value in recipientEmails to convert e-mail addresses from human-readable into SMTP-safe format.

Consider setting mailer.Message.Builder.SetDateOnSend to false when submitting to the pickup folder (mailer is Smtp instance). See SetDateOnSend for details.

Note Note
This method can return a null reference also if SubmittingMessageToPickupFolder even handler set SubmitIt to false.
Examples
This sample submits a mail message to IIS SMTP server by placing it in the pickup folder. The message file will be saved as "C:\Inetpub\mailroot\Pickup\001.eml". In the message itself, no recipients specified, but the message will still be sent to "alex@company.com" and "jane@domain.com".
// To use the code below, import MailBee namespaces at the top of your code.
using MailBee;
using MailBee.SmtpMail;

// The actual code (put it into a method of your class)

Smtp mailer = new Smtp();
mailer.From.Email = "jdoe@domain.com";
mailer.To.Add("kathy@company.com");
mailer.Subject = "Report";
mailer.BodyPlainText = "The report contents";
mailer.SubmitToPickupFolder(@"C:\Inetpub\mailroot\Pickup", "001.eml", null,
    "alex@company.com,jane@domain.com", true);
See Also