/// <summary> /// Make the List out of EXL and the save it to database. /// </summary> /// <param name="subject">subject</param> /// <param name="body">body</param> /// <param name="res">res</param> /// <param name="fileName">fileName</param> /// <param name="emailFrom">emailFrom</param> /// <param name="filePath">filePath</param> /// <returns>ResponseModel</returns> public async Task <ResponseModel> PushMailInDB(string subject, string body, DataSet res, string fileName, string emailFrom, string filePath) { ResponseModel response = new ResponseModel(); var a = res.Tables[0].Rows.Count; //list for send data to database List <EmailFormat> emailList = new List <EmailFormat>(); var Url = "http://lead411chromeex.azurewebsites.net/FileUpload/"; //var Url = "http://stagingwin.com/lead411/FileUpload/"; //list for sending data to Queue List <MessageText> mailListForQueue = new List <MessageText>(); var OnlyFileName = filePath;//filepath contains URL+fileName(with timestamp) for (int i = 0; i < a; i++) { //body = body.Replace("firstname", Convert.ToString(res.Tables[0].Rows[i]["Firstname"])); EmailFormat email = new EmailFormat(); email.EmailFrom = emailFrom; email.EmailTo = Convert.ToString(res.Tables[0].Rows[i]["Email"]); email.EmailSubject = subject; //email.EmailBody = "<h3> Hi " + Convert.ToString(res.Tables[0].Rows[i]["Firstname"]) + ",</h3> <br>" + body; email.EmailBody = body; email.EmployeCode = Convert.ToString(res.Tables[0].Rows[i]["Employee Id"]); email.FirstName = Convert.ToString(res.Tables[0].Rows[i]["Firstname"]); email.IsBounce = false; email.UserMembershipId = 1; email.FileName = OnlyFileName; emailList.Add(email); //var mail = email.UserMembershipId + "akjshdyt45lkh" + email.EmailFrom + "akjshdyt45lkh" + email.EmailTo + "akjshdyt45lkh" + email.EmailSubject + "akjshdyt45lkh" + email.EmailBody; //mailcListForQueue.Add(mail); } #region Code to save in AzureDB and create list to push in Azure Queue //response = await AddUpdateEmailDetail(emailList); EmailTemplets emailTemplet = new EmailTemplets(); emailTemplet = await _iAccount.AddEmailDetail(emailList, subject, body, fileName); if (emailTemplet.EmailDetails.Count > 0) { foreach (var email in emailTemplet.EmailDetails) { MessageText txt = new MessageText(); var emailbody = emailTemplet.EmailBody; emailbody = emailbody.Replace("firstname", email.FirstName); txt.msgtxt = email.EmailDetailsId + "akjshdyt45lkh" + email.EmailTempletId + "akjshdyt45lkh" + email.UserMembershipId + "akjshdyt45lkh" + email.EmailFrom + "akjshdyt45lkh" + email.EmailTo + "akjshdyt45lkh" + emailTemplet.EmailSubject + "akjshdyt45lkh" + emailbody + "akjshdyt45lkh" + email.FirstName; mailListForQueue.Add(txt); } #region code to Push in Queue Task.Run(() => PushMailInQueue(mailListForQueue)); response.IsSuccess = true; response.Message = "record added Successfully"; #endregion } else { response.IsSuccess = false; response.Message = "Sorry! Unable to save the records."; } #endregion return(response); }