Click or drag to resize

OutputEmailDeviceMimeKitScriptTemplate Field

Default script template for MimeKit

Namespace: Seal.Model
Assembly: SealLibrary (in SealLibrary.dll) Version: 10.0.1.0+a44cd3a7f03c2bf3cdbd971a878c679e40bed08a
Syntax
C#
public const string MimeKitScriptTemplate = "@using MimeKit\n@using MailKit.Net.Smtp\n@using MailKit.Security\n\n@{\n    OutputEmailDevice.EmailDefinition def = Model;\n    var device = def.device;\n\n    var message = new MimeMessage();\n\n    // From\n    message.From.Add(MailboxAddress.Parse(def.sender));\n\n    // To, CC, Bcc\n    Helper.AddEmailAddresses(message.To, def.to);\n    Helper.AddEmailAddresses(message.Cc, def.cc);\n    Helper.AddEmailAddresses(message.Bcc, def.bcc);\n    Helper.AddEmailAddresses(message.ReplyTo, def.replyTo);\n\n    message.Subject = def.subject;\n\n    // Body\n    var bodyBuilder = new BodyBuilder();\n    if (def.isHtmlBody)\n    {\n        bodyBuilder.HtmlBody = def.body;\n    }\n    else\n    {\n        bodyBuilder.TextBody = def.body;\n    }\n\n    // Attachment\n    if (!string.IsNullOrEmpty(def.attachPath))\n    {\n        var attachment = bodyBuilder.Attachments.Add(def.attachPath);\n        if (!string.IsNullOrEmpty(def.attachName))\n        {\n            attachment.ContentDisposition.FileName = def.attachName;\n            attachment.ContentType.Name = def.attachName;\n        }\n    }\n\n    message.Body = bodyBuilder.ToMessageBody();\n\n    // Send email\n    using (var client = new SmtpClient())\n    {\n        client.Timeout = device.Timeout;\n        client.Connect(device.Server, device.Port, device.SecureSocketOptions);\n\n        if (!string.IsNullOrEmpty(device.UserName))\n        {\n            client.Authenticate(device.UserName, device.ClearPassword);\n        }\n\n        client.Send(message);\n        client.Disconnect(true);\n    }\n}\n"

Field Value

String
See Also