MailJet Response не приходит и не зависает - PullRequest
0 голосов
/ 30 января 2020

Я застрял при попытке использовать его в веб-приложении MVC. Когда я попробовал один и тот же код в консольном приложении, он работает отлично, и почта запускается. Но когда я использую тот же кусок кода в веб-приложении, код зависает, и мы никогда не получаем ответ. Тот же код работает в Консольном приложении без каких-либо проблем, и письма запускаются.

Код указан ниже.

    protected void Page_Load(object sender, EventArgs e)
    {
        try
        {
            SendMailUI();
        }
        catch (Exception ex)
        {
            throw ex;
        }
    }


    private async void SendMailUI()
    {
        try
        {
            bool respnsereceived = await SendEmail();
        }
        catch (Exception ex)
        {
            throw ex;
        }
    }

    public static async Task<bool> SendEmail()
    {
        try
        {
            string APIKey = APIKey;
            string SecretKey = SecretKey;

            string From = "STASCO-Asset-Manager-Admin-C@shell.com";
            string To = "praveen.kumar10@shell.com";

            MailjetClient client = new MailjetClient(APIKey, SecretKey)
            {
                Version = ApiVersion.V3_1,
            };
            MailjetRequest request = new MailjetRequest
            {
                Resource = Send.Resource,
            }
               .Property(Send.Messages, new JArray {
            new JObject {
             {"From", new JObject {
              {"Email", From},
              {"Name", "STASCO Asset Manager Admin"}
              }},
             {"To", new JArray {
              new JObject {
               {"Email", To},
               {"Name", "You"}
               }
              }},
             {"Subject", "My first Mailjet Email!"},
             {"TextPart", "Greetings from Mailjet!"},
             {"HTMLPart", "<h3>Dear passenger 1, welcome to <a href=\"https://www.mailjet.com/\">Mailjet</a>!</h3><br />May the delivery force be with you!"}
             }
                   });

            MailjetResponse response = await client.PostAsync(request).ConfigureAwait(false);

            return true;

        }
        catch (Exception ex)
        {
            throw ex;
        }
    }
...