ASP.NET Core 5.0 - SMTP Settings Tester Project

Topic
ASP.NET Core 5.0 - SMTP Settings Tester Project
Framework
ASP.NET Core 5.0 
Version
1.2.1 
Description

Probably the most difficult bit of setting up an email service is the SMTP server settings. This project implements Bootstrap v5, Bootstrap Native, and the KenHaggerty. Com. SingleUser NuGet package which provides log in and log out pages for a single user to access the Admin pages. jQuery has been removed. This project features a sample Privacy Policy, AesCrypto, EmailSettings, EmailSender, and an SMTP Settings Tester. The project demostrates error emails from the Error page and exception emails with the ExceptionEmailerMiddleware.

The EmailSettings class is populated with runtime settings and added as TOptions to the ServiceCollection in the Startup. ConfigureServices. The runtime settings may load from the project's Users Secrets, appsettings. development. json, or appsettings. json. The EmailSender and SMTP Settings Tester implement the MailKit NuGet package. The EmailSender injects the runtime EmailSettings and sends an email using a html template or a text only email with HttpContext details like User-Agent, anonymized IP address, Path, and QueryString to the EmailSettings. AdminEmail property. The SMTP Settings Tester reads the runtime EmailSettings and the EmailSettings from appsettings. json and appsettings. development. json. All EmailSettings discovered can be loaded into a generator to test custom settings, runtime settings are loaded by default. The SMTP Settings Tester sends an email with the functional EmailSettings to the EmailSettings. AdminEmail or the EmailSettings. SupportEmail using a html template. A success message if the email is sent or a failure message including error details is displayed.

The AesCrypto class is used encrypt and decrypt email account passwords. The AES Cipher page is in Demos and the SMTP Settings Tester is in Admin. An empty ApplicationDbContext, an encrypted DefaultConnection and a ConnectionConfigured setting in appsettings are used to demonstrate encryption for SQL Server passwords in ConnectionStrings. The Microsoft. AspNetCore. Http. Features. ITrackingConsentFeature (non-essential cookies consent) is implemented with a demo _CookieConsentPartial.cshtml. Data Protection is implemented with PersistKeysToFileSystem and can be enabled with Startup.enableDataProtection.

Access Fee
Free 
Size
467,776 bytes 
File Name
SmtpSettingsTesterProject@1.2.1.zip 
License Type
MIT 
Change Log
v1.2.1 - 2021-09-03
-- Updated Twitter-Bootstrap@5.1.0
-- Updated Bootstrap-Native@4.0.5
-- Updated NuGet Packages
-- Updated AesCipher Demo
-- Continuity and bug fixes
v1.2.0 - 2021-08-06
-- Updated SMTP Settings Tester
-- Updated EmailSender
-- Continuity and bug fixes
v1.1.1 - 2021-08-02
-- Continuity and bug fixes
v1.1.0 - 2021-08-02
-- Implemented SslCertificateValidationCallback
-- Updated AesCrypto
-- Updated EmailSettings
-- Updated EmailSender
-- Continuity and bug fixes
v1.0.0 - 2021-07-29
-- Initial Package