ABOUT NOTIFICATION LIB
NotificationLib is a .net-library written in C# for mail sending and develop good looking html-templates. NotificationLib is build upon the System.Net.Mail-namespace in .net-core and uses RazorEngineCore as template-engine for template parsing.
FACTS
LIBRARY
NotificationLib
NuGet-package
Developers
ASP.NET CORE/RAZOR/HTML
KEY FEATURES
Learn more about the benefits of notification lib
- Send pretty formatted html-mails based on a reusable layout-template
- Provide an html-template in html-format and also include a plain-text-template for fallback.
- Embed images directly into the mail-message so that they are not blocked by mail clients
- Send mails with attachments
- Use razor-syntax to fill your html-templates
- Save all sent mails in outbox (a folder-structure on the server)
- Define if, you just want to simulate sending and save your mails in a special outbox-folder (e.g. for staging-environment)
- Support multi-language mail-templates with fallback-support
- Multi-tenancy-support with fallback (e.g. provide mails with customer logo for your premium customers)
- Use with commonly used smtp-mail-servers
USAGE EXAMPLE
HOW CAN I USE NOTIFICATION LIB?
Organize your templates within the following folder-structure and include them in your .net-project:
- Templates (root-folder, path must be provided by config)
- Default (the default root-folder for all your customers or tenant-fallback)
- LayoutTemplate (provide your custom layout-templates and use them in concrete mail-templates)
- Mail.html.cshtml (the layout-template with razor-support)
- Sample (folder to define a template, named „Sample“)
- Mail.html.cshtml (The html-template for your default culture)
- Mail.text.cshtml (The plain-text-fallback which is included in your mails as an alternate view by default)
- Mail.en.html.cshtml (Localized template for english culture)
- Mail.en.text.cshtml (The plain-text-fallback for the localized template)
- <add additional folders to define further mail-templates>
- LayoutTemplate (provide your custom layout-templates and use them in concrete mail-templates)
- <add additional root-folders in same hierarchy as the default-folder> for overriding some or all mails for a specific customer
- Default (the default root-folder for all your customers or tenant-fallback)
Provide a configuration in the appsettings.json:
For using mail-templates with layout, define your layout-template like this:
LAYOUT HEADER @RenderBody() LAYOUT FOOTER
The content of your concrete template will be put between the LAYOUT HEADER and LAYOUT FOOTER part of the layout-template.
Define your model-classes with state-of-the-art c#-classes:
public class SampleModel { public SampleModel(string name) { Name = name; } public string Name { get; set; } }
PRICING
INTERESTED IN OUR PRODUCT? SEND US A REQUEST!
Contact our sales-team at service@guppyware.net to get an personal offer.