public async void emailSent() { var appDominUrl = ".";//Url.Action("Index", null, null, Request.Url.Scheme); var TES = new TimeEmailSender("mail.ugtu.net", appDominUrl); Assert.IsTrue(await TES.SendMail("*****@*****.**", "*****@*****.**", "test", "body", true)); }
//========== Приватные методы //========== Рассылка писем private async void EmailSending(string userName, int idTimeSheet, bool result, string comments, int approvalStep, string departmentName, string appDominUrl) { await Task.Run(() => { var approverList = new List <DtoApprover>(); if (result) { approvalStep++; if (approvalStep < 3) { approverList.Add(GetApproverForTimeSheet(idTimeSheet, approvalStep + 1)); } else { for (int i = approvalStep; i > 0; i--) { approverList.Add(GetApproverForTimeSheet(idTimeSheet, i)); } } } else { //=== На данном этапе шаг согласования 0 ============================= for (int i = approvalStep; i > 0; i--) { approverList.Add(GetApproverForTimeSheet(idTimeSheet, i)); } } return(approverList); }).ContinueWith(async task => { try { var approverList = await task; var emailSender = new TimeEmailSender("mail.ugtu.net", appDominUrl); await emailSender.TimeSheetApproveEmailSending(userName, approverList, idTimeSheet, result, comments, approvalStep, departmentName, approvalStep >= 3); } catch (System.Exception e) { var ex = e; } }); }