public EmailSenderFactory(IConfiguration configuration, IServiceProvider serviceProvider)
        {
            var emailType = configuration["EmailSender:EmailSenderType"].ToLower();

            if (emailType == "pickup")
            {
                var options = new PickFolderSmtpOptions();
                configuration.GetSection("EmailSender").Bind(options);
                _emailSender = new PickFolderEmailSender(options);
            }
            else if (emailType == "smtp")
            {
                var options = new SmtpOptions();
                configuration.GetSection("EmailSender").Bind(options);
                _emailSender = new SmtpEmailSender(options);
            }
            else
            {
                var options = new SendGridOptions();
                configuration.GetSection("EmailSender").Bind(options);
                var logger = ActivatorUtilities.GetServiceOrCreateInstance <ILogger <SendGridEmailSender> >(serviceProvider);
                _emailSender = new SendGridEmailSender(options, logger);
            }
        }
 public PickFolderEmailSender(PickFolderSmtpOptions pickFolderSmtpOptions)
 {
     Options = pickFolderSmtpOptions;
 }