Beispiel #1
0
        /// <summary>
        /// This constructor exists for mocking purposes only.
        /// </summary>
        /// <param name="client"></param>
        /// <param name="options"></param>
        /// <param name="recipientResolver"></param>
        /// <param name="templateContentResolver"></param>
        /// <param name="templateIdResolver"></param>
        public SendGridTransporter(ISendGridClient client,
                                   SendGridOptions options,
                                   IEmailNotificationRecipientResolver <TRecipient> recipientResolver,
                                   IEmailResolver templateContentResolver)
            : this(client, options, recipientResolver)
        {
            if (templateContentResolver == null)
            {
                throw new ArgumentNullException(nameof(templateContentResolver));
            }

            _templateContentResolver = templateContentResolver;
        }
        public RazorMailer(string baseDir = null)
        {
            baseDir = baseDir ?? GetDefaultBaseDir();

            var defaultResolver = new DefaultResolver(baseDir);

            this.templateResolver = defaultResolver;
            this.emailResolver    = defaultResolver;
            this.templateService  = new TemplateService(new EmailTemplateConfiguration(baseDir)
            {
                Resolver = defaultResolver
            });

            Razor.SetTemplateService(templateService);
        }
        public RazorMailer(ITemplateServiceConfiguration config, IEmailResolver emailResolver)
        {
            if (config == null)
            {
                throw new ArgumentNullException("config");
            }
            if (config.Resolver == null)
            {
                throw new ArgumentException("Custom configuration must specify a resolver");
            }
            if (emailResolver == null)
            {
                throw new ArgumentNullException("emailResolver");
            }

            this.emailResolver    = emailResolver;
            this.templateResolver = config.Resolver;
            this.templateService  = new TemplateService(config);
        }
 public RazorMailer(ITemplateResolver templateResolver, IEmailResolver emailResolver)
     : this(new TemplateServiceConfiguration {
     Resolver = templateResolver
 }, emailResolver)
 {
 }
Beispiel #5
0
 public SendGridTransporter(SendGridOptions options,
                            IEmailNotificationRecipientResolver <TRecipient> recipientResolver,
                            IEmailResolver templateContentResolver) :
     this(new SendGridClient(options.ApiKey), options, recipientResolver, templateContentResolver)
 {
 }