SmtpSubmitToPickupFolder Method (String, String, String, EmailAddressCollection, Boolean) |
Saves the mail message as a file in the pickup folder of MailBee.NET Queue or IIS SMTP service.
Namespace: MailBee.SmtpMailAssembly: MailBee.NET (in MailBee.NET.dll) Version: 12.5.0 build 687 for .NET 4.5
Syntax public string SubmitToPickupFolder(
string pickupFolderName,
string filename,
string senderEmail,
EmailAddressCollection recipients,
bool doubleFirstDotAtLine
)
Public Function SubmitToPickupFolder (
pickupFolderName As String,
filename As String,
senderEmail As String,
recipients As EmailAddressCollection,
doubleFirstDotAtLine As Boolean
) As String
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. - recipients
- Type: MailBee.MimeEmailAddressCollection
The list of the message recipients. 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:
StringOn success, the filename (without folder path) of the file saved in the pickup folder; otherwise, a null reference
(
Nothing in Visual Basic).
Exceptions 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
ToIdnAddress for recipients collection 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.
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".
using MailBee;
using MailBee.SmtpMail;
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", "bounce@domain.com",
(EmailAddressCollection)null, true);
Imports MailBee
Imports MailBee.SmtpMail
Dim mailer As 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", "bounce@domain.com", _
CType(Nothing, EmailAddressCollection), True)
See Also