Azimzada.EmailMxValidator
1.0.0
dotnet add package Azimzada.EmailMxValidator --version 1.0.0
NuGet\Install-Package Azimzada.EmailMxValidator -Version 1.0.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Azimzada.EmailMxValidator" Version="1.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Azimzada.EmailMxValidator" Version="1.0.0" />
<PackageReference Include="Azimzada.EmailMxValidator" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Azimzada.EmailMxValidator --version 1.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Azimzada.EmailMxValidator, 1.0.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Azimzada.EmailMxValidator@1.0.0
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Azimzada.EmailMxValidator&version=1.0.0
#tool nuget:?package=Azimzada.EmailMxValidator&version=1.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Azimzada.EmailMxValidator
A comprehensive email validation library for .NET that performs multiple checks to validate email addresses:
- Email syntax validation using regex
- Domain existence check
- MX record verification
- SPF record verification
- Disposable email domain detection
Installation
Install the package via NuGet:
dotnet add package Azimzada.EmailMxValidator
Usage
using Azimzada.EmailMxValidator;
// Create validator instance
var validator = new EmailValidator();
// Validate an email address
var result = await validator.ValidateAsync("example@domain.com");
// Check validation results
if (result.IsValid)
{
Console.WriteLine("Email is valid!");
}
else
{
Console.WriteLine($"Email validation failed:");
Console.WriteLine($"- Syntax valid: {result.IsSyntaxValid}");
Console.WriteLine($"- Domain exists: {result.DomainExists}");
Console.WriteLine($"- Has MX record: {result.HasMxRecord}");
Console.WriteLine($"- Has SPF record: {result.HasSpfRecord}");
Console.WriteLine($"- Is disposable: {result.IsDisposableEmail}");
}
Validation Properties
The EmailValidationResult
class provides the following properties:
IsSyntaxValid
: Whether the email address follows correct syntaxDomainExists
: Whether the email domain exists (has A or MX records)HasMxRecord
: Whether the domain has MX records configuredHasSpfRecord
: Whether the domain has SPF records configuredIsDisposableEmail
: Whether the domain is a known disposable email serviceIsValid
: Convenience property that checks if email is valid based on syntax, domain existence and MX records
Features
- Asynchronous validation for better performance
- Parallel DNS checks
- Built-in list of disposable email domains
- XML documentation for better IntelliSense support
- Configurable DNS client with caching and retries
- MIT licensed
Requirements
- .NET 8.0 or higher
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Azimzada.EmailMxValidator
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net8.0
- DnsClient (>= 1.8.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last Updated | |
---|---|---|---|
1.0.0 | 385 | 8/5/2025 |