Skip to content
This repository was archived by the owner on Sep 29, 2024. It is now read-only.

EmailService

Sascha Manns edited this page Sep 6, 2024 · 1 revision

A service for sending emails

Usage

Instance a class

private void YourMethod()
{
   var email = new MimeMessage
		{
			Subject = "Your Subject",
			Body = new TextPart("plain") { Text = @$"Lorem ipsum dolor. :-)" },
			To =
			{
				new MailboxAddress("recipient", "Emailadress")
			}
		};

   var logger = new ILogger<EmailService>();
   var service = new EmailService(logger);
   await service.SendMessageAsync(message);


}

Instanzierung via DependencyInjection (Program.cs)

Host.CreateDefaultBuilder(args)
    .ConfigureAppConfiguration((hostingContext, configuration) =>
    {
        configuration.Sources.Clear();
        configuration.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);
        IConfigurationRoot configurationRoot = configuration.Build();
        Configuration = configurationRoot;              
	}).ConfigureServices((services) =>
    {
        services.AddSingleton<IConfigurationRoot>(Configuration);
        services.AddHostedService<ConsoleService>(); // This is the main service, who holds all methods we are using.
        services.AddSingleton<IEmailService, EmailService>();
    });

Anwendung nach DependencyInjection

private void AMethod()
{
var email = new MimeMessage
		{
			Subject = "Subject",
			Body = new TextPart("plain") { Text = @$"Lorem ipsum dolor Saschas Bot :-)" },
			To =
			{
				new MailboxAddress("recipient1", "Emailaddress"),
				new MailboxAddress("recipient2", "Emailaddress")
			}
		};

		await _emailService.SendMessageAsync(email);
}

Clone this wiki locally