public void CreateOrUpdateEmailTemplate(string templateName, string subject, string text, string html)
 {
     using (AmazonSimpleEmailServiceClient client = new AmazonSimpleEmailServiceClient(_regionEndpoint))
     {
         Template template = new Template
         {
             TemplateName = templateName,
             SubjectPart  = subject,
             TextPart     = text,
             HtmlPart     = html
         };
         CreateTemplateRequest createTemplateRequest = new CreateTemplateRequest {
             Template = template
         };
         try
         {
             _logger.LogInformation($"CreateOrUpdateEmailTemplate | TemplateName = {createTemplateRequest.Template.TemplateName}");
             CreateTemplateResponse createTemplateResponse = client.CreateTemplateAsync(createTemplateRequest).Result;
             _logger.LogInformation($"CreateTemplateResponse.StatusCode = {createTemplateResponse.HttpStatusCode}");
             _logger.LogInformation($"CreateTemplateResponse.RequestId = {createTemplateResponse.ResponseMetadata.RequestId}");
             _logger.LogInformation($"CreateTemplateResponse.Metadata = {string.Join("; ", createTemplateResponse.ResponseMetadata.Metadata)}");
         }
         catch (Exception ex)
         {
             if (ex.InnerException.GetType() == typeof(AlreadyExistsException))
             {
                 _logger.LogInformation($"Template already exists, updating template content for {templateName}");
                 try
                 {
                     UpdateTemplateResponse updateTemplateResponse = client.UpdateTemplateAsync(new UpdateTemplateRequest {
                         Template = template
                     }).Result;
                     _logger.LogInformation($"UpdateTemplateResponse.StatusCode = {updateTemplateResponse.HttpStatusCode}");
                     _logger.LogInformation($"UpdateTemplateResponse.RequestId = {updateTemplateResponse.ResponseMetadata.RequestId}");
                     _logger.LogInformation($"UpdateTemplateResponse.Metadata = {string.Join("; ", updateTemplateResponse.ResponseMetadata.Metadata)}");
                 }
                 catch
                 {
                     throw;
                 }
             }
             else
             {
                 _logger.LogError("Failure in CreateOrUpdateTemplate. Error message: " + ex.Message);
                 throw ex;
             }
         }
     }
 }
Пример #2
0
        public async Task <bool> CreateTemplate(string templatename, string subject, string body, string html)
        {
            Template template = new Template()
            {
                TemplateName = templatename,
                SubjectPart  = subject,
                TextPart     = body,
                HtmlPart     = html
            };

            _templaterequest = new CreateTemplateRequest
            {
                Template = template
            };
            _templateresponse = await _Client.CreateTemplateAsync(_templaterequest);

            if (_templateresponse.HttpStatusCode.ToString() == "OK")
            {
                return(true);
            }
            return(false);
        }