Skip to content

MailMergeLib is a mail message client library which provides comfortable mail merge capabilities for text, inline images and attachments, as well as good throughput and fault tolerance for sending mail messages.

License

Unknown, Unknown licenses found

Licenses found

Unknown
LICENSE.md
Unknown
License.txt

axuno/MailMergeLib

main
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
Src
January 14, 2023 01:49
February 27, 2021 20:28
August 2, 2017 19:24
December 28, 2018 00:53
December 28, 2018 00:53
August 2, 2017 19:24
September 30, 2016 17:23
January 14, 2023 00:57
January 14, 2023 00:57
January 14, 2023 10:12
January 14, 2023 01:49

Logo

GitHub release License: MIT

AppVeyor build status windows AppVeyor build status linux AppVeyor tests (compact) CodeCoverage

What is MailMergeLib?

MailMergeLib version 5 is an SMTP mail client library which provides comfortable mail merge capabilities. MailMergeLib is written in C# and comes with the following features:

Mail message generation

  • Email templates can be fully individualized in terms of recipients, subject, HTML and/or plain text, attachments and even headers. Placeholders are inserted as variable names from data source between curly braces like so: {MailboxAddress.Name} or with formatting arguments like {Date:yyyy-MM-dd}.
  • HTML text may contain images from local hard disk, which will be automatically inserted as inline attachments.
  • For HTML text MailMergeLib can generate a plain text representation.
  • Attachment sources can be files, streams or strings.
  • The data source for email merge messages to a number of recipients and be any IEnumerable object as well as DataTables. The data source for single emails can be any of the following types: Dictionary<string,object>, ExpandoObject, DataRow, any class instances or anonymous types. For class instances it's even allowed to use the name of parameter less methods.
  • Placeholders in the email can be formatted with any of the features known from string.Format by using SmartFormat.NET. SmartFormat is a parser coming close to string.Format's speed, but bringing a lot of additional options like easy pluralization for many languages.
  • Resulting emails are MimeMessages from MimeKit, an outstanding tool for creating and parsing emails, covering all relevant MIME standards making sure that emails are not qualified as SPAM.
  • Support for international email address format.

Sending email messages

  • Practically unlimited number of parallel tasks to send out individualized emails to a big number of recipients.
  • SmptClients for each task can get their own preconfigured settings, so that e.g. several mail servers can be used for one send job.
  • Progress of processing emails can easily be observed with a number of events.
  • SMTP failures can automatically be resolved supplying a backup configuration. This fault-tolerance is essential for unattended production systems.
  • Emails are sent using the SmtpClient from MailKit, the sister project to MimeKit. SmtpClient is highly flexible and can be configured for literally every scenario you can think of.
  • Instead of sending, emails can also be stored in MIME formatted text files, e.g. if a "pickup directory" from IIS or Microsoft Exchange shall be used. If needed, these files can be loaded back into a MimeMessage from MimeKit.

Save and restore

  • Messages and templates can be saved and loaded to/from XML files.
  • Configuration settings for messages and SMTP can be stored to and loaded from an XML file.

Both

  • Fine grained control over the whole process of email message generation and distribution.
  • Clearly out-performs .NET System.Net.Mail.
  • RFC standards compliant.
  • We aks you not to use MailMergeLib for sending unsolicited bulk email.

Supported Frameworks

  • .Net Framework 4.6.2 and later
  • .Net Standard 2.1 and later

Paypal-Donations

Get started

NuGet Install the NuGet package

Docs Have a closer look at the MailMergeLib Wiki

About

MailMergeLib is a mail message client library which provides comfortable mail merge capabilities for text, inline images and attachments, as well as good throughput and fault tolerance for sending mail messages.

Topics

Resources

License

Unknown, Unknown licenses found

Licenses found

Unknown
LICENSE.md
Unknown
License.txt

Stars

Watchers

Forks

Packages

No packages published

Languages